在python中使用.pyc文件时是否有任何性能提升?

时间:2012-02-28 16:36:41

标签: python pyc

我们可以编写一段python代码并将其放入已编译的#34; .pyc"文件并使用它。我想知道在性能方面是否有任何好处,或者它只是一种对代码进行分组的模块化方式。

非常感谢

5 个答案:

答案 0 :(得分:8)

在您的计划过程中没有任何性能提升。它只会缩短启动时间。

  

当从“.pyc”或“.pyc”读取程序时,程序运行得更快   '.pyo'文件,而不是从'.py'文件中读取的文件;唯一的事情   关于'.pyc'或'.pyo'文件的速度更快   他们被装上了。

http://www.network-theory.co.uk/docs/pytut/CompiledPythonfiles.html

pyo文件是下一个优化,只需从代码中删除doc字符串。

答案 1 :(得分:1)

我不确定.pyc文件(非常小的收益至少不会再次创建.pyc文件),但是Python解释器有一个'-O'标志,它产生优化的字节码(.pyo文件)。 / p>

答案 2 :(得分:0)

您将获得Python运行时解析并将源代码编译为字节码的一小部分,这只在首次运行/导入时发生。

您将失去便携性。

请参阅here

  

从“.pyc”或“.pyc”读取程序时,程序运行速度不会更快   '.pyo'文件,而不是从'.py'文件中读取的文件;唯一的事情   关于'.pyc'或'.pyo'文件的速度更快   他们被装上了。

答案 3 :(得分:0)

是的,只是因为第一次执行.py文件时,它被编译为.pyc文件。 所以基本上你必须添加编译时间。之后,应始终使用.pyc文件。

答案 4 :(得分:0)

根据此问题的接受答案:Why are main runnable Python scripts not compiled to pyc files like modules?

  

加载模块时,py文件被“字节编译”为pyc文件。   时间戳记录在pyc文件中。这样做不是为了做到这一点   跑得更快,但加载速度更快