我无法理解为元组使用“ in”的逻辑
例如,
t = (0, 2, 2.0, 5.0)
(0) in t gives True #or any single element of t
(0, 2) in t gives False
(0, 2, 2.0) in t gives False
t = [(0, 2, 2.0, 5.0),(0, 1, 0.0, -1.5)]
(0) in t gives False
请赐教。谢谢!
答案 0 :(得分:2)
您的元组(0, 2, 2.0, 5.0)
确实包含(0)
,因为它只是int
,0
。
它不包含(0, 2)
,因为(0, 2, 2.0, 5.0)
中没有这样的元组。
以下是一个包含tuple
的{{1}}的示例:
(0, 2)
答案 1 :(得分:1)
就像在元组中搜索(0)一样,它只是在搜索一个单个元素0(该元组中的整数)。因此,它返回True。 当您搜索(0,2)时,实际上是在t中不存在的元组中搜索元组,因此在这种情况下它返回False。 :)
In [7]: t = (0, 2, 2.0, 5.0)
In [8]: (0,2) in t
Out[8]: False
In [9]: t = (0, 2, 2.0, 5.0,(0,2))
In [10]: (0,2) in t
Out[10]: True