本文对 Cpython 源码树中顶层目录做一下简单介绍,了解它们每个目录的作用,可以帮助对 Python 源代码感兴趣的童鞋们定位功能源代码的大概位置。
## Doc
## Grammar
用来放置 Python 的 EBNF 语法文件
## Include
放置编译所需的全部头文件
## Lib
标准库中的 Python 实现部分
## Mac
Mac平台特定代码(比如 构建 OS X 的 IDLE 应用)
## Misc
无法归类到其它地方的东西,通常是不同类型的特定开发者文档
## Modules
标准库(还包括一些其它代码)中需要 C 实现的部分
## Objects
所有内置类型的源码
## PC
Windows 平台特定代码
## PCbuild
Welcome to Python.org 提供的 Windows 新版 MSVC 安装程序的构建文件
## Parser
解析器相关代码,AST 节点的定义也在这里
## Programs
可执行 C 程序的源码,包括 CPython 解释器的主函数(3.5版之前放在 Modules 目录)
## Python
用来构建核心 CPython 运行时的代码,包括编译器、eval 循环和各种内置的模块。
## Tools
用来维护 Python 的各种工具