Python在执行时,首先会将.py文件中的源代码编译成Python的byte code(字节码),
然后再由Python Virtual Machine(Python虚拟机)来执行这些编译好的byte code。
这种机制的基本思想跟Java,.NET是一致的。
然而,Python Virtual Machine与Java或.NET的Virtual Machine不同的是,
Python的Virtual Machine是一种更高级的Virtual Machine。
这里的高级并不是通常意义上的高级,不是说Python的Virtual Machine比Java或.NET的功能更强大,
而是说和Java 或.NET相比,
Python的Virtual Machine距离真实机器的距离更远。
或者可以这么说,Python的Virtual Machine是一种抽象层次更高的Virtual Machine。
基于C的Python编译出的字节码文件,通常是.pyc格式。

Python解释器执行原理_第1张图片