在python2中:
>>> 'a' in ('ab')
True
>>> 'a' in ('ab', 'c')
False
如果我只想测试给定元组中是否存在某些字符串,看起来当元组大小为1时我不能使用'in'运算符?是否有一致的方法来做到这一点?
更新
谢谢大家。试过这个:
>>> tup='ab',
>>> type(tup)
<type 'tuple'>
>>> 'a' in tup
False
它解释了逗号很好地构建了一个元组。
答案 0 :(得分:9)
因为('ab')
实际上不是元组而是字符串。
,
实际上定义了一个元组,而不是括号(除了@chepner指出的空元组()
)。
在('ab',)
上尝试相同的操作,看看会发生什么!