如何从Python脚本生成.pyc文件

时间:2015-09-15 05:44:26

标签: python terminal pyc

我知道在其他python脚本中导入Python脚本时,会创建一个.pyc脚本。有没有其他方法可以使用linux bash终端创建.pyc文件?

2 个答案:

答案 0 :(得分:8)

使用以下命令:

python -m compileall <your_script.py>

这将在同一目录中创建your_script.pyc文件。

您也可以将目录传递为:

python -m compileall <directory>

这将为目录

中的所有.py文件创建.pyc文件

其他方法是创建另一个脚本

import py_compile
py_compile.compile("your_script.py")

它还会创建your_script.pyc文件。您可以将文件名作为命令行参数

答案 1 :(得分:5)

您可以使用py_compile模块。从命令行(-m选项)运行它:

  

当此模块作为脚本运行时, main()用于编译所有   在命令行上命名的文件。

示例:

$ tree
.
└── script.py

0 directories, 1 file
$ python3 -mpy_compile script.py
$ tree
.
├── __pycache__
│   └── script.cpython-34.pyc
└── script.py

1 directory, 2 files

compileall提供类似的功能,使用它你会做类似的事情

$ python3 -m compileall ...

... 是要编译的文件或包含源文件的目录,递归遍历

另一种选择是导入模块:

$ tree
.
├── module.py
├── __pycache__
│   └── script.cpython-34.pyc
└── script.py

1 directory, 3 files
$ python3 -c 'import module'
$ tree
.
├── module.py
├── __pycache__
│   ├── module.cpython-34.pyc
│   └── script.cpython-34.pyc
└── script.py

1 directory, 4 files

-c 'import module'-m module不同,因为前者不会执行 module.py 中的if __name__ == '__main__':块。