我是Python的新手,我偶然发现5 in range(5,6) in [range(5,6)]
return True
。有人可以向我解释这背后的逻辑是什么?这行不等于True in [range(5,6)]
吗?为什么不?以及它如何真正起作用?
谢谢 :)
Python允许您“链接”比较运算符(来自docs):
可以任意链接比较,例如
x < y <= z
与等效x < y and y <= z
,不同之处在于y
比较仅被评估一次(但在两种情况下z
都x < y
被发现为假,则根本不评估)。
并in
在以上引用中算作比较运算符。因此该表达式等效于:
5 in range(5, 6) and range(5, 6) in [range(5, 6)]
是True
,因为5
在该范围内,并且range(5, 6)
在该列表中。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句