当我运行时,这是python控制台:
>>> 'b' in 'b' is 'b'
我得到这个结果
True
类似,当我运行此命令时:
>>> 'b' in 'b' == 'b'
答案仍然是True
,这让我很困惑。
我做的实验:
>>> 'b' in ('b' is 'b')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: argument of type 'bool' is not iterable
>>> ('b' in 'b') is 'b'
False
任何人都可以解释这是如何发生的以及python拦截器的优先级可以完成in
,==
和is
的工作吗?