if-expr-with-true-false (SIM210)
源自 flake8-simplify 代码检查器。
有时提供修复。
作用
检查可以被 bool()
调用替换的 if
表达式。
为什么这不好?
对于真值条件评估为 True
,对于假值条件评估为 False
的 if
表达式可以被 bool()
调用替换,这更加简洁易读。
示例
建议改为
修复安全性
此修复被标记为不安全,因为它可能会改变程序的行为,如果条件没有返回正确的布尔值。虽然该修复将尝试将非布尔值包装在 bool 调用中,但像 __eq__
这样的比较函数的自定义实现可以避免 bool 调用,并且仍然会导致行为改变。此外,修复可能会删除注释。