给定一个元组的元组T:
(('a', 'b'))
和一个单独的元组t1:
('a','b')
为什么:
t1 in T
返回假?
更新:来自 Ipython:
In [22]: T = (('a','b'))
In [23]: t1 = ('a','b')
In [24]: t1 in T
Out[24]: False
那么如何检查一个元组是否在另一个元组中呢?
问题是因为 T 不是元组的元组,它只是一个元组。逗号构成元组,而不是括号。应该:
>>> T = (('a','b'),)
>>> t1 = ('a', 'b')
>>> t1 in T
True
事实上,你可以去掉外括号:
>>> T = ('a','b'),
>>> t1 = 'a','b'
>>> type(T)
<type 'tuple'>
>>> type(T[0])
<type 'tuple'>
>>> type(t1)
<type 'tuple'>
>>> t1 in T
True
尽管有时需要它们来确定优先级,但如果有疑问,请将它们放入。但请记住,正是逗号使其成为元组。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)