gpt4 book ai didi

python - Python的基本优化模式有什么用? ( python -O)

转载 作者:IT老高 更新时间:2023-10-28 20:33:57 28 4
gpt4 key购买 nike

Python 有一个标志 -O,你可以用它来执行解释器。该选项将生成“优化”字节码(写入 .pyo 文件),并给出两次,它将丢弃文档字符串。来自 Python 的手册页:

-O Turn on basic optimizations. This changes the filename extension for compiled (bytecode) files from .pyc to .pyo. Given twice, causes docstrings to be discarded.

在我看来,这个选项的两个主要特点是:

  • 剥离所有断言语句。这牺牲了对腐败程序状态的防御以换取速度。但是你不需要大量的断言语句来产生影响吗?您是否有任何值得(并且理智的)代码?

  • 剥离所有文档字符串。在哪个应用程序中内存使用如此关键,以至于这是一个胜利?为什么不将所有内容都放入用 C 编写的模块中?

这个选项有什么用?它有实际值(value)吗?

最佳答案

-O 标志的另一个用途是 __debug__ 内置变量的值设置为 False

所以,基本上,您的代码可以有很多“调试”路径,例如:

if __debug__:
# output all your favourite debugging information
# and then more

-O 下运行时,它甚至不会作为字节码包含在 .pyo 文件中;穷人的 C-ish #ifdef。

请记住,只有标志为 -OO 时才会删除文档字符串。

关于python - Python的基本优化模式有什么用? ( python -O),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1693088/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com