Enabling/disabling 使用代码断言 python 中的语句

Enabling/disabling assert statements in python using code

在C/C++中,程序员可以轻松enable/disable断言源代码中带有宏的语句。这可以在 python 中以类似的方式完成吗?

我知道可以使用 python 中的 -O 标志(大写 O)禁用断言。但是,我更喜欢在源代码中这样做。

我正在使用 python 3.7.3 和 Windows 10。

我认为 Python 中没有可比的方法来实现这一点。 -O 标志将 built-in 变量 __debug__ 设置为 False,但 Python 不允许在 run-time 处更改它。

一种可能的解决方案是将您的断言封装在 if-statements 中,使用全局变量来控制是否执行 assert 语句,但我怀疑这就是您正在寻找的答案对于.

有关该主题的更多信息,您可能需要查看 this 对相关问题的回答。