当将字符串与仅包含 1 个字符串的元组进行比较时,我注意到“in”操作的奇怪行为。
'monday' in ('not monday')
Run Code Online (Sandbox Code Playgroud)
结果为 True
,就像我们比较 2 个字符串一样
但是如果我通过在元组中添加另一个元素来更改表达式。
'monday' in ('not monday', 'not monday neither')
Run Code Online (Sandbox Code Playgroud)
它按预期返回 False。
知道为什么吗?
>>> 'monday' in ('not monday')
True
>>> 'monday' in ('not monday',)
False
Run Code Online (Sandbox Code Playgroud)
单元素元组必须有尾随逗号。否则,它会被解释为常规的操作顺序括号,在这种情况下毫无意义。 因此,在'monday' in ('not monday')语法上与 相同'monday' in 'not monday'。
| 归档时间: |
|
| 查看次数: |
106 次 |
| 最近记录: |