python .py .pyc .pyw .pyo .pyd区别

Posted deadwood_2016

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python .py .pyc .pyw .pyo .pyd区别相关的知识,希望对你有一定的参考价值。

.py 文件

以 .py 作扩展名的文件是 Python 源代码文件,由 python.exe 解释,可在控制台下运行。当然也可用文本编辑器进行修改。


.pyc 文件

以 .pyc 作扩展名的文件是 python 编译文件。.pyc 文件是不能用文本编辑器进行编辑的,优点是 .pyc 文件的执行速度要远快于 .py 文件。

 

至于为什么要有 .pyc 文件,因为 .py 文件是可直接看到源码的,若软件开发商的话,不可能把源码泄漏出去。所以,就需编译成 .pyc 后再发布。


.pyw 文件

.pyc 文件执行时,桌面会出现类似 CMD 命令的黑色 shell 窗口,十分难看,于是 .pyw 文件就应运而生了。.pyw 文件与 .pyc 文件的执行,本质上并没什么区别,只是 .pyw 文件执行的时候不会出现类似 CMD 命令的黑色 shell 窗口。

 

.pyw 文件格式主要是设计用来运行纯 GUI 图形用户界面程序的。 纯 GUI 图形用户界面程序的用户不需要看到类似 CMD 命令的黑色 shell 控制台窗口。.pyw 文件运行时,所有 stdout、stderr 输出无效,所有原 stdin 的读取只会得到 EOF。

 

值得一提的是,开发纯 GUI 图形用户界面程序时,可暂时把 .pyw 改成 .py,以便运行时调出控制台窗口,看到所有错误信息,方便修改、调试。


.pyo 文件

.pyo 文件是优化编译后的程序。 “python -O 源文件” 即可将源程序编译为 .pyo 文件。同样.pyo 文件也是不能用文本编辑器进行编辑的。


pyd 文件

.pyd 文件并不是用 python 编写成的,.pyd 文件一般是其他语言编写的 python 扩展模块。.pyd 文件是用 D 语言按照一定格式编写,并处理成二进制的文件。

 

 





以上是关于python .py .pyc .pyw .pyo .pyd区别的主要内容,如果未能解决你的问题,请参考以下文章

python py pyc pyw pyo pyd之间区别

Python文件格式 .py .pyc .pyw .pyo .pyd的主要区别

python文件后缀名是啥

python脚本文件的扩展名是啥

python程序文件test.py编译后的文件名

Python生成pyd文件