我似乎无法弄清楚如何将编译的.pyc 模块导入我的代码,以便我可以在我的主脚本中使用它。
如果有 foo.pyc,无论 foo.py 是否存在,导入 foo 都会自动使用 foo.pyc
(如果 foo.py 较新,则将使用它)
http://docs.python.org/tutorial/modules.html简而言之,要仅导入 Python 编译的文件(例如module.pyc),只需将其放置在源(例如module.py)所在的目录中,并确保没有相应的源文件(module.py在我们的示例中)。然后通常的0
如果在编译文件的同一目录中有一个源文件,Python 将使用__pycache__
目录中的编译文件,或者如果不存在,则从源代码重新编译。
如果删除源文件时没有在同一目录中放置“.pyc”,则即使编译后的文件存在于__pycache__
目录中,导入也会失败。另请注意,__pycache__
下的文件遵循不同的命名约定。如果将它们复制过来,请确保对它们进行重命名,以使其与源文件具有相同的名称,但扩展名必须为“pyc”而不是“py”。
从documentation链接的 PEP 3147 中有一个非常好的flow chart。
使用 import不带扩展名。Python 将查看文件是否已更改,如果没有,它将使用以前创建的 pyc 文件。
但是请注意,如果您真的想要更高的性能,我建议您使用PyPy,它比标准 CPython 实现快得多。(但请注意,它仍然是 Python 2)
本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处
评论列表(85条)