zhuyumu 发表于 2017-4-21 08:40:00

Python源码分析1

  Python是一种动态的脚本语言。具体的我就不多介绍了,可以参考www.python.org. Python是Open Source的,在www.python.org可以下载到最新的2.5版的源代码。源代码链接在这里:Python 2.5
  下载下来之后直接解压缩可以看到如下的目录结构:
DemoDemo用的代码,主要用来展示Python的一些应用DocPython的UserManual。Latex格式的Grammar语法文件。这个语法文件会在Python运行的时候被用来分析Python源代码IncludePython Include用的头文件LibPython的库文件MacFor MacMisc如字面意思,一些不适合放在其他地方的文件就放在这里了ModulesPython的一些Built-in Module的实现ObjectsPython的基本内部对象的实现,比如class/list等等ParserPython的词法分析和语法分析PC比较老的Windows和OS2的Port的项目以及Port用到的一些公用文件放在这里,PCBuild和PCBuild8都要用到这个目录的内容PCBuildPython用于VS 2003的Project文件PCbuild8Python用于VS 2005的Project文件PythonPython主程序代码RISCOSPython的RISC OS PortToolsBuild和Extend Python所需的工具  在Unix/Linux/Cywin下面可以直接键入:
  ./configure
make install
  Windows用VC Build的话,可以直接打开PCBuild/PCBuild8下面相应的Solution来Build。直接Build的话会出不少错误,有必要做一些调整:

[*]不是所有的Project都可以立刻Build,部分Project由于对第三方库有依赖,一般情况下可以直接跳过Build这些Project,而只Build核心的Python代码。在Configuration Manager里面直接Exclude就可以。必需的Project是:make_buildinfo, make_versioninfo, python, pythoncore
[*]PythoncoreProject少了一个文件,需要手动把Modules\_typesmodule.c加入到工程中去,再Build
  今天就写到这里,下一篇我会通过跟踪执行一个最简单的Python代码来介绍Python执行的流程。


  作者:ATField
E-Mail:atfield_zhang@hotmail.com
Blog:http://blog.csdn.net/atfield
页: [1]
查看完整版本: Python源码分析1