跳到内容

assert-false (B011)

源自 flake8-bugbear linter。

修复总是可用的。

作用

检查 assert False 的使用情况。

为什么这不好?

Python 在优化模式 (python -O) 下运行时会移除 assert 语句,使得 assert False 成为引发 AssertionError 的不可靠方式。

相反,直接引发 AssertionError

示例

assert False

建议改为

raise AssertionError

修复安全性

此规则的修复被标记为不安全,因为将 assert 更改为 raise 将会在优化模式 (python -O) 下运行时改变程序的行为。

参考