python 中 or 运算符的用法

usage of or operator in python

请在 python

中解释一下 or 运算符的作用
>>>sen='abcdef'
>>>'a' in sen
True
>>>'v' or 'z' in sen
'v'
>>>('v' or 'z') in sen
False
>>>('v' or 'a') in sen
False
>>>('a' or 'v') in sen
True

第一个输出显然是有道理的。从第二个输出来看,我不明白发生了什么!

当你使用括号时,你告诉解释器首先解释括号内的内容。因此,让我们从第二个输出开始:

>>>('v' or 'z') in sen

您在这里所做的是: ('v' or 'z') 转换为 v 因为它从左到右 - 它们的计算结果都是 True,所以如果你想写 'z' or 'v' 它将计算为 z .因此,您正在检查 v 是否在 sen 内 --> False.

继续:

>>>('v' or 'a') in sen --> is 'v' inside sen?
False
>>>('a' or 'v') in sen --> is 'a' inside sen?
True