python - 为什么 python 'in' 运算符根据元组大小表现不同?

标签 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/

相关文章:

python - Tornado gzip 压缩特定 RequestHandler 的响应

python - 在处理 isinstance 时包装对象以扩展/添加功能

python - 为 LSTM 模型调用预测函数时出现有关输入形状的错误

python - 在 Ubuntu 14.04 上设置 Spyder 以使用 Anaconda python

python - 在 Python 中创建基于文本的游戏。如何检查用户输入?

Python 优化的最余弦相似向量

python - 找到从任何节点到一个节点的最小公共(public)路径

python - 如何忽略python函数中的隐藏文件?

Python - Jupyter 无法识别 Unix 命令

python - python mysql中如何自动插入id?