Python源码整体框架

难得有个周末是休息两天的。趁着这两天有空,一口气吧Python虚拟机的那几章看完了,顺便还看了Python动态导入模块和Python运行时初始化的部分。现在就剩下线程和内存管理的部分没有看了。

马上就要看完《Python源码剖析》了,总算是明白Python是个神码东西了,不过并着绝对清晰的原则,感觉还是有大部分东西不明白,所以趁热打铁,我决定开始看第二遍。之前计划好了,十月是属于Python源码的月。

首先绝对要先感觉作者Robert Chen,这家伙的极客精神绝对值得我们大家学习。那些不明白的地方正是我的成长点所在。

Python源码大概分三个部分,第一部分是编译器部分,包含了词法分析和语法分析等。第二部分是一些重要的类库和核心模块。第三部分是Python解释器,也就是Python虚拟机,整个Python最核心的模块。

下面是一些Python源码中的目录以及简介。

  • Include: 包含了Python提供的所有文件,如果用户需要自己用C或者C++边写自定义模块扩展Python,就需要用到这里的头文件。
  • Lib: 包含了Python自带的所有标准库。这里的文件都是直接用Python写的。
  • Modules: 该目录包含了所有用C语言编写的模块。这里的模块往往对速度要求比较高,对速度要求不高的都放在了Lib文件夹下。
  • Parser: 这里面包含了Python的语法分析和词法分析类库。
  • Objects: 这里包含了所有的Python内建对象。包含整数,list, dict等,一些Python的内部使用对象也放在了这个文件夹下面。
  • Python: 这就是Python虚拟机的部分,是整个Python执行引擎的所在。帅。

Python的安装也比较方便,

  1. ./configure –prefix=
  2. make
  3. make install

还有修改Python源码的时候尽量使用Python提供的CAPI,不然有可能会出乱七八糟的错误。

《Python源码剖析》分三部分:

  • Python内建对象。
  • Python虚拟机。
  • Python高级话题。

Python源码,通往Pythoner的必经之路。加油