本系列作为本人@takooctopus深入学习python机制的记录,这个博客遵照着栖迟于一丘的博客上面的流程进行的,也包含我在实际查看源码时的感想,特此列出,表示感谢。
Python源码获取与基本情况
源码获取
{{- code -}}
版本选择与切换
{{- code -}}
此时我们能够看到所有的版本
{{- code -}}
我们看到最新的稳定版是3.7,我们选择将版本选择到最新的稳定版
{{- code -}}
目录结构
首先我们看到的是目录结构:
Folder | description |
---|---|
Include | 包括了Python提供的所有头文件,用于使用C或者C++来编写Python的自定义模块 |
Lib | Python的标准库,全部由Python编写 |
Module | 包含用C语言编写的模块,比如常用的random 以及stringIO 等 |
Parses | 包含了python解释器中的scanner和parser部分,也就是词法分析和语法分析部分,一个类似yacc一样根据规则自动生成 |
Object | 包含所有Python的内置对象,整数, list, dict等.也包含了运行时python需要的所有内部使用的对象的实现 |
Python | 包含了python解释器中Compiler和执行引擎部分,是python运行的核心所在 |
PCBuild | 包含了vs工程文件 |
此外还有几个文件夹:
Folder |
---|
Doc |
Grammar |
m4 |
Mac |
Misc |
PC |
Programs |
Tools |
总体架构
Python整体分成了3个模块:
Module |
---|
内建模块 |
Python内核 |
Python虚拟机 |