Python-解释执行原理及运行过程
分享一个大牛的人工智能教程。零基础!通俗易懂!风趣幽默!希望你也加入到人工智能的队伍中来!请轻击http://www.captainbed.net事实上,Python 程序在执行过程中同样需要编译(Compile),编译产生的结果称之为字节码,而后由 Python 虚拟机逐行地执行这些字节码。所以,Python 解释器由两部分组成:编译器和虚拟机。Python解释器把源代码转换成中间形式:字节码,
分享一个大牛的人工智能教程。零基础!通俗易懂!风趣幽默!希望你也加入到人工智能的队伍中来!请轻击人工智能教程
事实上,Python 程序在执行过程中同样需要编译(Compile),编译产生的结果称之为字节码,而后由 Python 虚拟机逐行地执行这些字节码。所以,Python 解释器由两部分组成:编译器和虚拟机。
Python解释器把源代码转换成中间形式:字节码,然后由Python虚拟机来执行这些字节码。
Python是一门先编译后解释的语言。
当Python程序运行时,编译的结果保存到内存中的PyCodeObject中;当Python程序运行结束时,Python解释器则将PyCodeObject写回到pyc文件中。当Python程序第二次运行时,首先会在硬盘中寻找pyc文件,如果找到,则直接载入,否则重复上面的过程。所以说pyc文件其实是PyCodeObject的一种持久化保存方式。
pyc的目的是重用,Python解释器认为:只有import进来的模块,才是需要被重用的模块。pyc文件每次被载入时,都会检查它的最后修改日期(由PyCodeObject写入到pyc时会写入一个long型的日期),与py文件一致则直接使用,否则重新生成一份pyc文件。
更多推荐
所有评论(0)