Skip to main content
 首页 » 编程设计

python之'and' N 'or' 在 python 中到底是什么意思

2025年05月04日13shanyou

我现在真的很困惑,如果你遇到这样的表达式,在我的程序思维模型中

expr = expr1 和 expr2

这意味着 expr 的类型必须是 Boolean,与“或”操作相同

看下面的代码,假设这三行将打印 bool 值

print(1==1 and 3) 
print(1==2 and 3) 
print(1==2 and 3 or 4) 

但是结果是

3 
False 
4 

我必须重新学习基本编程:

and和or的真正含义 'e1 and e2' 表示计算 e1 如果结果为 False 则返回 False 否则返回 e2 'e1 or e2' 表示计算 e1 如果结果为 True 则返回 True 否则返回 e2

我做对了吗?

请您参考如下方法:

此行为与 bool 逻辑本身并没有真正的关系。相反,它是 Python 特有的。 and 和 or 不是总是返回 True/False,而是返回两个操作数之一的值。

下面是一个很好的解释:The Peculiar Nature of and and or .