PYTHON 源码阅读 - STRING

本周进展不大(去掉北上, 选择余地太小了), 下周开始投简历:(

这一章, 就一张图, 代码比较多


PyStringObject

源码位置 Include/stringobject.h |
Objects/stringobject.c

定义

说明

结构

PyStringObject

构造方法

两个构造方法其实区别不大,

我们关注PyString_FromString就行

创建过程 PyString_FromString

定义

步骤简化

结论

interned机制

interned

interned定义

使用的地方

示例

python源代码自己也大量使用

好处

字符缓冲池

定义

在上面PyString_FromString可以看到, 字符缓冲池在使用中初始化(存在直接返回, 不存在建一个, 放interned字典中, 初始化字符缓冲池对应位置)

字符串销毁过程

性能相关

+join

可以查看string_concat方法和string_join方法的源代码


changelog

打赏支持我写出更多好文章,谢谢!

打赏作者

打赏支持我写出更多好文章,谢谢!

任选一种支付方式

2 收藏 评论

关于作者:wklken

Pythonista/vimer 个人主页 · 我的文章 · 37 ·   

可能感兴趣的话题



直接登录
跳到底部
返回顶部