Python可以编译吗:是否可以导入编译的python文件

我似乎无法弄清楚如何将编译的.pyc 模块导入我的代码,以便我可以在我的主脚本中使用它。

21

如果有 foo.pyc,无论 foo.py 是否存在,导入 foo 都会自动使用 foo.pyc

(如果 foo.py 较新,则将使用它)

http://docs.python.org/tutorial/modules.html
7

简而言之,要仅导入 Python 编译的文件(例如module.pyc),只需将其放置在源(例如module.py)所在的目录中,并确保没有相应的源文件module.py在我们的示例中)。然后通常的0

如果在编译文件的同一目录中有一个源文件,Python 将使用__pycache__目录中的编译文件,或者如果不存在,则从源代码重新编译。

如果删除源文件时没有在同一目录中放置“.pyc”,则即使编译后的文件存在于__pycache__目录中,导入也会失败。另请注意,__pycache__下的文件遵循不同的命名约定。如果将它们复制过来,请确保对它们进行重命名,以使其与源文件具有相同的名称,但扩展名必须为“pyc”而不是“py”。

documentation链接的 PEP 3147 中有一个非常好的flow chart

3

使用 import不带扩展名。Python 将查看文件是否已更改,如果没有,它将使用以前创建的 pyc 文件。

但是请注意,如果您真的想要更高的性能,我建议您使用PyPy,它比标准 CPython 实现快得多。(但请注意,它仍然是 Python 2)

1
import module

如果有一个.py源文件,核心将自动使用.pyc,如果它是最新的。

如果没有源代码,python 将自动导入.pyc

“Compiled”Python files.

本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处

(903)
学校数据库:将本地数据库数据同步到远程数据库
上一篇
Python中name=main:emacs中的Python:__name__= = '__main__' 但不知何故
下一篇

相关推荐

发表评论

登录 后才能评论

评论列表(85条)