过度注释代码会减慢执行速度吗? [复制]

Posted

技术标签:

【中文标题】过度注释代码会减慢执行速度吗? [复制]【英文标题】:Will excessive commenting of code slow execution? [duplicate] 【发布时间】:2012-05-16 05:33:24 【问题描述】:

可能重复:Do comments slow down an interpreted language?

如果超过 75% 的代码行被正确注释,执行大型 .py 文件是否会出现明显的性能下降?

【问题讨论】:

不,但如果您的 75% 的代码有 cmets,那么您可能会受益于不进行太多注释,而是编写可读的代码。 【参考方案1】:

没有

当你运行python时,第一步是转换成字节码,也就是那些.pyc文件。评论已从这些内容中删除,因此无关紧要*

如果您使用-O-OO 选项运行,python 将生成“优化的”pyo 文件,即使速度更快,也可以忽略不计。主要区别在于:

-O 断言被移除, 使用-OO 选项,__doc__ 字符串被删除。鉴于有时需要这些,不建议使用-OO 运行。

* 下面已经指出.pyc 文件只为模块保存。因此,顶层可执行文件每次运行时都必须重新编译。此步骤可能减慢大量 python 可执行文件。在实践中,大部分代码应该驻留在模块中,这不是问题。

【讨论】:

...所以它可能会影响您的 启动 时间,但不会影响您的长期执行时间。特别是,如果所有内容都预编译到 .pyc 文件中,则这是一次性成本,而不是每次运行成本。 @Wooble,好点,但我从未注意到效果。我能想到的唯一情况是,当您运行 very 长条带时,或者您从 python 外部重复调用 python 可执行文件时。在实践中,我从来没有遇到过。 @Wooble 如果您遵循最佳实践,您的脚本只是模块的薄包装; setuptools 和 kin 甚至会自动为您生成这些包装器。 @CharlesDuffy:也许是这样,但 OP 谈到“执行大型 .py 文件”。当然 cmets 只会影响启动时间,但每次运行大脚本时都会影响,因为不会创建 .pyc 文件。 “否”部分是正确的,但解释具有误导性。 即使您有一个直接从命令行调用的大型、单一的.py 文件,为它编写一个简单地导入大脚本的“包装器”也是微不足道的。然后大脚本被编译为.pyc,每次运行时只解析一行包装器。

以上是关于过度注释代码会减慢执行速度吗? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

犰狳库是不是会减慢矩阵运算的执行速度?

非聚集索引会减慢插入速度吗?

额外的空间会减慢处理器的速度吗?

条件语句会减慢着色器的速度吗?

并行调用会减慢分析器的速度吗?

OpenGL - 会使用多个 VBO 减慢渲染速度吗?