2024-04-25 08:19:19 发布
网友
我写了一个简单的脚本test.py,其中包含:
test.py
print('hello')
然后使用python -O test.py来运行它。我希望这将创建一个test.pyo文件,但它没有。在
python -O test.py
test.pyo
我的版本是python3.5.2。为什么没有创建缓存文件?在
Python只为导入的模块创建字节码缓存文件。主脚本(这里是test.py)没有被缓存。应用什么样的优化级别并不重要。在
导入test:
test
$ python -O -c 'import test' hello $ ls __pycache__ test.cpython-35.opt-1.pyc
请注意,缓存文件是在一个名为__pycache__的单独目录中创建的,文件名不仅基于模块名,还基于Python版本和优化级别;使用-OO获得{}。从Python3.5开始,不再使用.pyo文件扩展名,请参见PEP 488 Elimination of PYO files,并查看{a2},了解为什么要使用单独的目录。在
__pycache__
-OO
.pyo
如果要预编译模块,请使用^{} tool。在
Python只为导入的模块创建字节码缓存文件。主脚本(这里是
test.py
)没有被缓存。应用什么样的优化级别并不重要。在导入
test
:请注意,缓存文件是在一个名为}。从Python3.5开始,不再使用
__pycache__
的单独目录中创建的,文件名不仅基于模块名,还基于Python版本和优化级别;使用-OO
获得{.pyo
文件扩展名,请参见PEP 488 Elimination of PYO files,并查看{a2},了解为什么要使用单独的目录。在如果要预编译模块,请使用^{} tool 。在
相关问题 更多 >
编程相关推荐