<分区>
在 python2 中:
>>> 'a' in ('ab')
True
>>> 'a' in ('ab', 'c')
False
如果我只是想测试某个字符串是否存在于给定的元组中,看起来我不能在元组大小为 1 时使用“in”运算符?有没有一致的方法来做到这一点?
更新:
谢谢大家。试过这个:
>>> tup='ab',
>>> type(tup)
<type 'tuple'>
>>> 'a' in tup
False
它解释了逗号可以很好地构成元组。
标签 python
<分区>
在 python2 中:
>>> 'a' in ('ab')
True
>>> 'a' in ('ab', 'c')
False
如果我只是想测试某个字符串是否存在于给定的元组中,看起来我不能在元组大小为 1 时使用“in”运算符?有没有一致的方法来做到这一点?
更新:
谢谢大家。试过这个:
>>> tup='ab',
>>> type(tup)
<type 'tuple'>
>>> 'a' in tup
False
它解释了逗号可以很好地构成元组。
最佳答案
因为 ('ab')
实际上不是一个元组而是一个字符串。
,
真正定义了一个元组,而不是括号(@chepner 指出的空元组 ()
除外)。
在 ('ab',)
上尝试相同的操作,看看会发生什么!
关于python - 为什么 python 'in' 运算符根据元组大小表现不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33427256/