Skip to main content
 首页 » 编程设计

python之三向真假校验

2025年05月04日12tintown

我有 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):