我有 3 个变量,a, b, c。我想检查 a 是否为真,c 是否为真,但前提是 b 为真。如果 b 为假,则只检查 a。
例如:
如果a为真,b为假,则返回true
如果a为真,b为真,c为假,则返回false。
如果 a 为假,则返回假。
构造此 if 条件的最 pythonic 方法是什么?
请您参考如下方法:
这不是严格意义上的 python - 更多的是基本的 bool 检查。 不过,如果您将它们按正确的顺序排列,则可以利用短路。
你有一个像这样的 TT:
--------------------
| A | B | C | Output
--------------------
| T | F | X | T
| T | T | T | T
| F | X | X | F
| T | T | F | F
如您所见,A == False 始终对应于 False 条件。如果 A 不为假,则 B 与输出条件反向关联,而 'C' 与输出条件直接关联。我会这样写:
if A and (not B or C):
