Python的整体架构分为三个主要的部分:整个架构附件:
File groups:
python 提供的大量的模块、库以及用户自定义的模块。比如:在执行import sys时,sys就是Python内建的模块,同时,在实际的项目中,用户可以自定义模块来扩展Python系统。
Python core:
是Python的核心,即解释器,当然,也是任何一种高级语言的核心。在解析器中,箭头的方向指示了Pythonn运行过程中的数据流方向。其中Scanner对应词法分析,将文件输入的Python源代码或从命令行输入的一行行Python代码切分为一个的token;Parser对应语法分析,在Scanner的分析结果上做语法分析,建立抽象语法树(AST);Compiler是根据建立的AST生成指令集合---Python字节码,{zh1}由Code Envaluator来执行这些字节码,因此,Code Envaluator被称为虚拟机。、
Runtime Env:
是Python的运行环境,包含对象/类型系统、内存分配器和运行时状态信息。运行时状态维护了解释器在执行字节码时不同的状态之间切换的动作,视为一个巨大而复杂的有穷状态机。内存分配器则全权负责Python中创建对象时,对内存的申请工作,实际上它就是Python运行时与C中malloc的一层接口。而对象/类型系统则包含了Python中存在的各种内建对象,以及各种用户自定义的类型和对象。
File groups:
python 提供的大量的模块、库以及用户自定义的模块。比如:在执行import sys时,sys就是Python内建的模块,同时,在实际的项目中,用户可以自定义模块来扩展Python系统。
Python core:
是Python的核心,即解释器,当然,也是任何一种高级语言的核心。在解析器中,箭头的方向指示了Pythonn运行过程中的数据流方向。其中Scanner对应词法分析,将文件输入的Python源代码或从命令行输入的一行行Python代码切分为一个的token;Parser对应语法分析,在Scanner的分析结果上做语法分析,建立抽象语法树(AST);Compiler是根据建立的AST生成指令集合---Python字节码,{zh1}由Code Envaluator来执行这些字节码,因此,Code Envaluator被称为虚拟机。、
Runtime Env:
是Python的运行环境,包含对象/类型系统、内存分配器和运行时状态信息。运行时状态维护了解释器在执行字节码时不同的状态之间切换的动作,视为一个巨大而复杂的有穷状态机。内存分配器则全权负责Python中创建对象时,对内存的申请工作,实际上它就是Python运行时与C中malloc的一层接口。而对象/类型系统则包含了Python中存在的各种内建对象,以及各种用户自定义的类型和对象。