cpython 底层实现笔记 - V2EX
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
zpoint

cpython 底层实现笔记

  zpoint
zpoint Apr 30, 2019 20305 views
This topic created in 2569 days ago, the information mentioned may be changed or developed.
每个对象都大概配了文字描述和插图, 比如
字典对象实现: https://github.com/zpoint/Cpython-Internals/blob/master/BasicObject/dict/dict_cn.md
整数对象实现: https://github.com/zpoint/Cpython-Internals/blob/master/BasicObject/long/long_cn.md

这是大纲: https://github.com/zpoint/Cpython-Internals/blob/master/README_CN.md
时间充足的话会把勾打完并补充(

写 blog 新手, 如写的不好, 希望能提意见
如有帮助, 可以加个 star
Supplement 1    Aug 23, 2019
91 replies    2019-08-29 23:44:50 +08:00
1800x
    1
1800x  
   Apr 30, 2019   1
已 started
denonw
    2
denonw  
   Apr 30, 2019   1
已 star,加油
zpoint
    3
zpoint  
OP
   Apr 30, 2019
huagui
    4
huagui  
   Apr 30, 2019
强呀
xiexingjia
    5
xiexingjia  
   Apr 30, 2019
已 Star
xiexingjia
    6
xiexingjia  
   Apr 30, 2019
建议 Cpython --> CPython
zpoint
    7
zpoint  
OP
   Apr 30, 2019
@huagui $_$( ⊙ o ⊙ )

@xiexingjia 已 rename, thx
HeavenlyChorus
    8
HeavenlyChorus  
   Apr 30, 2019 via Android
资词
toarya
    9
toarya  
   Apr 30, 2019 via Android
厉害了
Markbolo126
    10
Markbolo126  
   Apr 30, 2019 via iPhone
楼主学 Python 多久了?感觉好厉害
SuperMild
    11
SuperMild  
   Apr 30, 2019
@Markbolo126 这个重点应该是 C 语言吧
mseasons
    12
mseasons  
   May 1, 2019
已 Star
shell314
    13
shell314  
   May 1, 2019 via Android
很棒,已 star
thechosenone
    14
thechosenone  
   May 1, 2019
star
bearcarl
    15
bearcarl  
   May 1, 2019
已 star,加油。
menyakun
    16
menyakun  
   May 1, 2019
想问一下,这种图是怎么生成的
mseasons
    17
mseasons  
   May 1, 2019
@menyakun 目测 processon
zpoint
    18
zpoint  
OP
   May 1, 2019
@HeavenlyChorus thx
@toarya [Facepalm]
@Markbolo126 @SuperMild c 和 python 学的起始时间和进度条差不多, 从上学开始算的话, 上学学的时间到现在 减去 上学荒废的时间 == 四年左右[Facepalm]
@mseasons thx
@shell314 thx
@thechosenone thx
@bearcarl thx
@menyakun @mseasons 对了, 是 processon
zhoudaiyu
    19
zhoudaiyu  
PRO
   May 1, 2019 via iPhone   1
已 Star,感谢!
zpoint
    20
zpoint  
OP
   May 5, 2019
ManjusakaL
    21
ManjusakaL &bsp;
   May 5, 2019
很棒
ManjusakaL
    22
ManjusakaL  
   May 5, 2019
不过如果时间够的话,可以再写写部分为什么这么设计,比如 Dict 中 dummy 这样的状态存在意义之类的
zpoint
    23
zpoint  
OP
   May 5, 2019   1
@ManjusakaL 好的,谢谢 O(∩_∩)O
necomancer
    24
necomancer  
   May 7, 2019
真学 python ....
zpoint
    25
zpoint  
OP
   May 8, 2019
locoz
    26
locoz  
   May 8, 2019
大佬牛逼
ddzzhen
    27
ddzzhen  
   May 8, 2019 via Android
已 star,方便我等菜鸟
chiu
    28
chiu  
   May 8, 2019 via Android
支持
0ZXYDDu796nVCFxq
    2
0ZXYDDu796nVCFxq  
   May 8, 2019 via Android
硬核
dtjydsre
    30
dtjydsre  
   May 8, 2019
已 Star
OakScript
    31
OakScript  
   May 8, 2019
先 star 为敬
ech0x
    32
ech0x  
   May 8, 2019
我突然想起一本咕了很久的书…… 好东西,star。
shenxgan
    33
shenxgan  
   May 8, 2019
支持,已 star
Ahs
    34
Ahs  
   May 8, 2019 via Android
先 star 为敬
junnplus
    35
junnplus  
   May 9, 2019
zpoint
    36
zpoint  
OP
   May 9, 2019
@locoz
@ddzzhen thx
@chiu thx
@gstqc thx
@dtjydsre thx
@whenhow94 thx
@ech0x thx
@shenxgan thx
@Ahs thx

@junnplus 收藏了
dinjufen
    37
dinjufen  
   May 9, 2019
正好我也在看,学习下哈
dinjufen
    38
dinjufen  
   May 9, 2019
那本《 Python 源码剖析》太不清晰了,看的很难受
zpoint
    39
zpoint  
OP
   May 9, 2019
ManjusakaL
    40
ManjusakaL  
   May 9, 2019
@junnplus 膜 jun 老师
robinlovemaggie
    41
robinlovemaggie  
   May 20, 2019
支持一波学院派,这点真真的很 Samwell~
xavier007
    42
xavier007  
   May 20, 2019
不忍打破 250,但是还是狠了狠心
lrxiao
    43
lrxiao  
   May 20, 2019
建议看完 repo 还是得吧 Python2.6 源码解析和 Inside Python Virtual Machine 看一遍
quanjw
    44
quanjw  
   May 20, 2019
295star
zpoint
    45
zpoint  
OP
   May 20, 2019
@robinlovemaggie thanks
@xavier007 (*`)
@lrxiao (⊙o⊙)
@quanjw (*`)
tinkerer
    46
tinkerer  
   May 20, 2019
starred.
BIAOXYZ
    47
BIAOXYZ  
   May 20, 2019
挺用心的,支持了~
zpoint
    48
zpoint  
OP
   May 21, 2019
@tinkerer thanks
@BIAOXYZ thanks(ω)
chenxinqun
    49
chenxinqun  
   May 22, 2019
好文! 363star
itwhat
    50
itwhat  
   May 27, 2019
已 star,
foxyier
    51
foxyier  
   May 29, 2019
已 star,666
zpoint
    52
zpoint  
OP
   Jun 4, 2019
wsgws
    53
wsgws  
   Jun 4, 2019 via iPhone
好文,forked
berry10086
    54
berry10086  
   Jun 4, 2019
请问楼主图片是用什么软件画的
86091566
    55
86091566  
   Jun 4, 2019
同问楼主图片是用什么软件画的
zpoint
    56
zpoint  
OP
   Jun 4, 2019
@wsgws thanks
@berry10086 @86091566 ProcessOn (^o^)
86091566
    57
86091566  
   Jun 4, 2019
已 star,持续关注中
zpoint
    58
zpoint  
OP
   Jun 4, 2019
@86091566 (ω)
Harz
    59
Harz  
   Jun 13, 2019
已 star 支持
forever139
    60
forever139  
   Jun 13, 2019
不错,支持。
hjq98765
    61
hjq98765  
   Jun 13, 2019
学习了!已 Star
jamesliu96
    62
jamesliu96  
   Jun 13, 2019 via Android
真好
zpoint
    63
zpoint  
OP
   Jun 13, 2019
ruyuejun
    64
ruyuejun  
   Jun 21, 2019
不错
crudboy
    65
crudboy  
   Jun 21, 2019
学习了
lCC1984
    66
lCC1984  
   Jul 3, 2019
刚刚接触 python 看不懂。。 还是先 shoucang 一下~ 改天学到一定程度了回来看嘻嘻
chaleaochexist
    67
chaleaochexist  
   Jul 3, 2019
牛逼,做了我一直想做而没能力做的.
boywhp
    68
boywhp  
   Jul 11, 2019
秒了 V2 一大波人了, 不得不说,看源码是提升自身水平的最快途径
telnetning
    69
telnetning  
   Jul 16, 2019
厉害!已 Star,向楼主学习,多谢楼主分享!
zpoint
    70
zpoint  
OP
   Jul 16, 2019
@ruyuejun @crudboy @lCC1984 谢谢 O(∩_∩)
zpoint
    71
zpoint  
OP
   Jul 16, 2019
@chaleaochexist 不同的人技能树不太一样, 花多点时间说不定你可以做的更好
@boywhp [Facepalm] 赞同看源码提升快
@telnetning 相互学习
codepark
    72
codepark  
   Jul 22, 2019
战术性收藏~
Ingo
    73
Ingo  
   Jul 23, 2019 via iPhone
楼主加油
mattx
    74
mattx  
   Jul 27, 2019
star 等做完了, 楼主可以出本书
silencefly
    75
silencefly  
   Jul 27, 2019 via iPhone
已 star 支持
rieuse
    76
rieuse  
   Jul 30, 2019 via Android
赞~ 非常感谢
b00tyhunt3r
    77
b00tyhunt3r  
   Jul 30, 2019 via iPhone
支持,但是本菜鸡想问一下用 python 实现这些有啥实际意义吗?真心请教非杠!!
zpoint
    78
zpoint  
OP
   Jul 30, 2019
zpoint
    79
zpoint  
OP
   Jul 30, 2019
@mattx 感谢支持, 菜鸡一枚, 没出书水平♂
zpoint
    80
zpoint  
OP
   Jul 30, 2019
@b00tyhunt3r 并没有用 python 实现这些结构, 如果你戳的是正文链接的话, 这些结构都是写解释器的人用 C 语言实现, 实现以后你能用解释器去运行 你根据 python 语法 /文档写出的 python 代码

理解这些东西能帮助你写出更高效的代码, 在有对应需求的时候可以自己定制扩展解释器的功能
b00tyhunt3r
    81
b00tyhunt3r  
   Jul 31, 2019 via iPad
@zpoint 受教了
iamdaguduizhang
    82
iamdaguduizhang  
   Aug 1, 2019
在实力面前,评论区突然变得统一。。
Hstar
    83
Hstar  
   Aug 5, 2019
楼主好,基本看完了。
有个小建议,你后期的部分写的比较详细,前面的内容就比较省略了。希望能有一个回头看的机制,再推敲一下以前的内容。
比如 list 对象的 free_list,我看一头雾水啊。
zpoint
    84
zpoint  
OP
   Aug 5, 2019
@iamdaguduizhang 谢谢支持~
zpoint
    85
zpoint  
OP
   Aug 5, 2019
@Hstar 谢谢, 刚开始为了让内容看起来比较丰满一点有点赶进度了, 慢工出细活会回头补充一下, 可以关注 issue
aSmallNewbie
    86
aSmallNewbie  
   Aug 6, 2019
大佬。。。
dwadewyp
    87
dwadewyp  
   Aug 21, 2019
先 star 为敬
334862132
    88
334862132  
   Aug 21, 2019
已 star 膜拜大佬
Drahcir
    89
Drahcir  
   Aug 21, 2019
终于看到 Python 底层解析了
收藏 + star
ClutchBear
    90
ClutchBear  
   Aug 23, 2019
感谢已经 start
zpoint
    91
zpoint  
OP
   Aug 29, 2019
@aSmallNewbie 不是大佬♂谢谢支持
@dwadewyp 谢谢(ω)
@334862132 谢谢支持 不是大佬哈♂
@Drahcir Thanks(ω)
@ClutchBear 谢谢!
About     Help     Advertise     Blog     API     FAQ     Solana     3351 Online   Highest 6679       Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 441ms UTC 12:56 PVG 20:56 LAX 05:56 JFK 08:56
Do have faith in what you're doing.
ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86