使用bool()简化If语句

时间:2018-03-29 02:17:37

标签: python boolean refactoring lint pylint

我有一些导致pylint抱怨的代码:

  

if语句可以替换为' var = bool(test)' (simplifiable-if语句)`

代码(带有模糊变量名称)如下所示。

A = True
B = 1
C = [1]
D = False
E = False

if A and B in C:
    D = True
else:
    E = True

print(D, E)

如何简化这一点,以便pylint不会抛出任何错误?我不太明白bool()如何用于此。我知道它会将任何值转换为布尔值,但我不知道如何在此处应用它。

2 个答案:

答案 0 :(得分:1)

试试这个:

D = bool(A and B in C)
E = not bool(A and B in C)

答案 1 :(得分:1)

该逻辑可以表示为:

D = A and B in C
E = not D