不执行的情况下编译Python .py文件

56 投票
6 回答
94672 浏览
提问于 2025-04-15 17:53

有没有办法在命令行中编译一个Python的.py文件,而去执行它呢?

我正在处理一个应用程序,它把Python扩展存放在一个不太常见的路径里,而且权限有限。我想在安装的时候编译这些文件。其实我不想用Distutils带来的额外负担。

6 个回答

5

其实如果你在使用Linux系统,你可能已经在你的路径中有一个叫做 /usr/bin/py_compilefiles 的命令了。这个命令是用来封装之前提到的py_compile模块的。如果你不是在Linux上,这里有一个脚本代码

21

是的,有一个叫做 compileall 的模块。下面是一个例子,它可以编译一个文件夹中的所有 .py 文件(但不包括子文件夹里的文件):

python -m compileall -l myDirectory
86

py_compile模块提供了一个功能,可以把源文件转换成字节码文件,还有另一个功能是在模块源文件被当作脚本运行时使用。

python -m py_compile fileA.py fileB.py fileC.py

撰写回答