2024-04-26 17:50:02 发布
网友
有人能解释一下为什么Python解释器计算这个表达式是假的吗?你知道吗
1 in [1] == True
我希望[1]中的1会求值为True,显然True==True就是True。然而,事实并非如此-表达式是错误的。为什么会这样?你知道吗
如果您有这样一个python表达式,请将其拆分为多个语句。事实上:
1 in [1] == True equals to: (1 in [1]) and ([1] == True)
右边是假的,因为[1] != True,整个句子是假的
[1] != True
==和in都是比较运算符。当您有多个这样的比较运算符时,Python将其视为链式比较。例如,1 < x < 10等价于1 < x and x < 10。你知道吗
==
in
1 < x < 10
1 < x and x < 10
在您的例子中,1 in [1] == True等价于(1 in [1]) and ([1] == True),其计算结果为False。你知道吗
(1 in [1]) and ([1] == True)
False
如果您有这样一个python表达式,请将其拆分为多个语句。事实上:
右边是假的,因为
[1] != True
,整个句子是假的==
和in
都是比较运算符。当您有多个这样的比较运算符时,Python将其视为链式比较。例如,1 < x < 10
等价于1 < x and x < 10
。你知道吗在您的例子中,
1 in [1] == True
等价于(1 in [1]) and ([1] == True)
,其计算结果为False
。你知道吗相关问题 更多 >
编程相关推荐