Python 过多的代码注释会降低执行速度吗?
可能重复:Python 过多的代码注释会降低执行速度吗?,python,performance,comments,code-formatting,technical-debt,Python,Performance,Comments,Code Formatting,Technical Debt,可能重复: 如果超过75%的代码行被正确注释,那么在执行大型.py文件时会出现明显的性能下降吗?否 运行python时,第一步是转换为字节码,这就是那些.pyc文件。注释已从这些文件中删除,因此无所谓* 如果您使用-O或-OO选项运行,python将生成“优化的”pyo文件,这些文件的速度要快得多,也可以忽略不计。主要区别在于: 使用-O删除断言 使用-OO选项,可以去掉\uuuuuuuuuuuuuu字符串。考虑到这些有时是需要的,不建议使用-OO运行 *下面已经指出,.pyc文件仅为模
如果超过75%的代码行被正确注释,那么在执行大型.py文件时会出现明显的性能下降吗?否 运行python时,第一步是转换为字节码,这就是那些
.pyc
文件。注释已从这些文件中删除,因此无所谓*
如果您使用-O
或-OO
选项运行,python将生成“优化的”pyo
文件,这些文件的速度要快得多,也可以忽略不计。主要区别在于:
- 使用
删除断言-O
- 使用
选项,可以去掉-OO
字符串。考虑到这些有时是需要的,不建议使用\uuuuuuuuuuuuuu
运行李>-OO
*下面已经指出,
.pyc
文件仅为模块保存。因此,顶级可执行文件必须在每次运行时重新编译。这一步可能会降低大型python可执行文件的速度。在实践中,大多数代码都应该驻留在模块中,这就不成问题了 …因此它可能会影响您的启动时间,但不会影响您的长期执行时间。特别是,如果所有内容都预编译到.pyc
文件中,这是一次性成本,而不是每次运行的成本。@Wooble,很好,但我从未注意到效果。我能想到的唯一情况是,当您运行一个很长的条带时,或者您从python外部重复调用python可执行文件时,这一点会有什么影响。实际上,我从未遇到过这两种情况。@Wooble如果您遵循最佳实践,那么您的脚本只是围绕模块的薄型包装;setuptools和kin甚至会自动为您生成这些包装器。@CharlesDuffy:也许是这样,但OP提到“执行一个大的.py文件”。当然,注释只会影响启动时间,但每次运行大型脚本时都会影响,因为不会创建.pyc文件。“否”部分是正确的,但解释是误导性的。即使您有一个直接从命令行调用的大型单片.py
文件,为它编写一个“包装器”来导入大脚本也很简单。然后,大脚本被编译成.pyc
,每次运行时只解析一行包装器。不,但是如果您对75%的代码有注释,您可能会受益于不注释太多而编写可读代码。