Python运行执行模式
2011-01-20 21:26
218 查看
平时download下来的一些python工程,执行后都会有.pyc文件产生,所以一直都以为执行.py文件后都会产生.pyc文件,今天试了把,发现不是那么一回事情,查资料并研究后发现:
1.Python的运行执行模式为:将录入的源代码转换为字节码,之后字节码在Python虚拟机中运行(代码自动被编译,然后再解释)
2.一般执行一个.py文件会通过调用py_compile的compile()方法在内存中产生字节码,在程序结束的时候内存中的字节码会被丢弃
3.如果一个.py文件作为一个模块被其他.py文件import的话,python进程会将该字节码保存为.pyc文件,目的是加快启动速度,即如果我们在上次保存字节码之后麽有修改过源代码的话,python就会直接加载.pyc文件并跳过编译这个步骤。当Python必须重新编译的时候,它会自动检查源文件和字节码文件的时间戳:如果它发现我们又修改保存过源代码的话,则程序运行时字节码将会自动重新创建
4.如果.py文件没有被其他文件import,也想生成pyc文件的话,可以通过python -m py_compile hello.py这样的方式来编译生成.pyc文件
1.Python的运行执行模式为:将录入的源代码转换为字节码,之后字节码在Python虚拟机中运行(代码自动被编译,然后再解释)
2.一般执行一个.py文件会通过调用py_compile的compile()方法在内存中产生字节码,在程序结束的时候内存中的字节码会被丢弃
3.如果一个.py文件作为一个模块被其他.py文件import的话,python进程会将该字节码保存为.pyc文件,目的是加快启动速度,即如果我们在上次保存字节码之后麽有修改过源代码的话,python就会直接加载.pyc文件并跳过编译这个步骤。当Python必须重新编译的时候,它会自动检查源文件和字节码文件的时间戳:如果它发现我们又修改保存过源代码的话,则程序运行时字节码将会自动重新创建
4.如果.py文件没有被其他文件import,也想生成pyc文件的话,可以通过python -m py_compile hello.py这样的方式来编译生成.pyc文件
相关文章推荐
- mkdir是windows的一个命令,也就是在命令行可以直接运行的命令。如果你在命令行中可以直接执行"python" 那么就可以替换执行
- Android5.1.1源码 - 让某个APP以解释执行模式运行
- iOS 单例模式 学习 "52个方法 第6章 45条 使用 dispath_once 来执行只需运行一次的线程安全代码"
- Android5.1.1源码 - 让某个APP以解释执行模式运行
- [求解]在debug模式下程序正常运行(多次测试),运行模式下(正确数据)时常会抛异常,抛异常后事务也没有阻止,而继续执行操作?
- Scala可以在交互模式下运行但无法执行脚本的解决方法
- PHP调用python,shell命令执行成功,web运行失败
- python 开发的三种运行模式详细介绍
- 在运行程序时报错:"如果在 Code First 模式下使用,则使用 T4 模板为 Database First 和 Model First 开发生成的代码可能无法 正常运行。若要继续使用 Database First 或 Model First,请确保在执行应用程序的 config 文件中指 定 Entity Framework 连接字符串。若要将这些从 Database First 或 Mod
- Python自学遇到的小问题——交互模式下程序从某句直接运行了
- 如何在Windows下开发Python:在cmd下运行Python脚本+如何使用Python Shell(command line模式和GUI模式)+如何使用Python IDE
- Python的交互模式和直接运行.py文件有什么区别?
- python中的commands模块,执行出错:'{' 不是内部或外部命令,也不是可运行的程序 或批处理文件。
- 让python临时运行在32位模式下
- 如何在Windows下开发Python:在cmd下运行Python脚本+如何使用Python Shell(command line模式和GUI模式)+如何使用Python IDE
- selenium-python编写unittest运行代码时候不执行
- python编程(python开发的三种运行模式)【转】
- 通过计算python执行时间,来提升程序的运行效率
- Windows 配置Apache以便在浏览器中运行Python script的CGI模式
- 【Python】Windows中DOS窗口运行Python的可执行文件