|  |      1zoowii      2016-09-24 11:08:54 +08:00 和 C 语言水平应该关系不大 | 
|  |      2xuqd      2016-09-24 11:09:28 +08:00 《 Python 源码剖析 》 | 
|  |      4wizardforcel      2016-09-24 11:18:23 +08:00 《 Python 源码剖析 》 CPython 是 C 写的面向对象,如果不刻意去理解还真看不懂。 | 
|  |      5uhayate OP @wizardforcel 就是咯。 C 语言水平太菜了,所以需要提升一下。 | 
|  |      6ruoyu0088      2016-09-24 13:11:32 +08:00 有个好的代码阅读软件比较重要。然后就是用 ctypes, cffi 之类的写一些实验代码帮助理解。 | 
|      7sylecn      2016-09-24 13:21:03 +08:00 如果你对编译器和语言感兴趣,才建议看 python 源码。否则,单纯为了学 C ,不推荐看 CPython 源码。 如果 C 基础不行,建议选一种简单的 scheme 实现开始看,不要上来就看 python 这么复杂而且有历史包袱的语言。 看编译器的实现,需要对语言和编译器技术有一定了解,单单了解 C 的库和语法是远远不够的。所以如果这些有欠缺,先补一下编译器原理之类的,再看源码会比较容易。 如果你只是看部分标准库的实现,那就当我没说。那些内容除了遵循 python 模块规范和使用 python 数据结构,其它都和标准 C 差不太多。看多了就懂了。 | 
|  |      8starcraft      2016-09-24 13:40:43 +08:00 via iPhone 和 c 水平没太大关系,因为这是基础中的基础。读 python 源码轻不轻松取决于你整个编译知识体系。你纠结错了关键点。 c 不过关的话,连第一步都没迈出.... | 
|  |      9jmp2x      2016-09-24 17:04:59 +08:00 @wizardforcel 最近看了些,确实是,用结构体去实现类对象,结构体的嵌套前置,就是父类,实现的很有意思。 |