true-false-comparison (E712)
源自 pycodestyle linter。
修复总是可用的。
作用
检查与布尔字面量的相等性比较。
为什么这不好?
PEP 8 建议不要使用相等运算符 ==
和 !=
将值与 True
或 False
进行比较。
而是使用 if cond:
或 if not cond:
来检查真值。
如果您打算检查一个值是否为布尔字面量 True
或 False
,请考虑使用 is
或 is not
来检查标识而不是相等性。
示例
建议改为
修复安全性
此规则的修复被标记为不安全,因为它在使用覆盖 ==
/__eq__
或 !=
/__ne__
运算符的库时可能会改变运行时行为。 在这些情况下,is
/is not
可能不等同于 ==
/!=
。 更多信息,请参阅 此问题。