Python的in(__contains__)运算符返回一个布尔值,其值既不是True也不是False。

12 浏览
0 Comments

Python的in(__contains__)运算符返回一个布尔值,其值既不是True也不是False。

正如预期的那样,1不包含在空元组中。

但是返回的False值与False并不相等。

换个角度看,in运算符返回一个既不是True也不是False的bool值。

然而,如果将原始表达式括在括号中或将其值存储在变量中,正常行为会恢复。

这种行为在Python 2和Python 3中都观察到。

你能解释一下发生了什么吗?

0