Python啥情况下会生成pyc文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python啥情况下会生成pyc文件相关的知识,希望对你有一定的参考价值。

参考技术A 如果 Python 进程在机器上拥有写入权限,那么它将把程序的字节码保存为一个以 .pyc 为扩展名的文件( ".pyc" 就是编译过的 ".py" 源代码)。当程序运行之后,你会在那些源代码的附近(也就是说同一个目录下)看到这些文件
Python这样保存字节码是作为一种启动速度的优化。下一次运行程序时,如果你在上次保存字节码之后没有修改过源代码的话,Python将会加载.pyc文件并跳过编译这个步骤。当Python必须重编译时,它会自动检查源文件和字节码文件的时间戳:如果你又保存了源代码,下次程序运行时,字节码将自动重新创建。

python py pyc pyw pyo pyd之间区别

来源: http://blog.csdn.net/chroming/article/details/52083387

1、py

脚本文件,是最基本的源码扩展名。windows下直接双击运行会调用python.exe执行。

2、pyc

在 执行python代码时经常会看到同目录下自动生成同名的pyc文件。这是python源码编译后的字节码,一般会在代码执行时自动生成你代码中引用的py文件的pyc

文件。这个文件可以直接执行,用文本编辑器打开也看不到源码。

3、pyw

是另一种扩展名,跟py唯一区别是在windows下双击pyw扩展名的源码会调用pythonw.exe执行源码,这种执行方式不会有命令行窗口。

主要用于GUI程序发布时不需要看到控制台信息的情况。

4、pyo

跟pyc类似的优化编码后的文件。

5、pyd

本非从python程序生成,而是其他语言写成的可以被python调用的扩展。有时候依赖其他dll文件才能import。

以上是关于Python啥情况下会生成pyc文件的主要内容,如果未能解决你的问题,请参考以下文章

pyc文件修复出题经历

SQLite中的页面缓存在啥情况下会被清除?

java中啥情况下会发生io异常

python学习笔记

java web开发中的Thread.currentThread()啥情况下会改变啊?

memcpy在啥情况下会失败