使用解释器时,表达式'a' in ('abc')返回True,而'a' in ['abc']返回False。有人可以解释这种行为吗?
('abc')的内容仅用于装饰,也可能引起混乱。我花了一段时间才克服了这个问题。我也认为括号表示特殊的东西(例如方括号或花括号,这确实意味着特殊)。在这种用法中,那些括号的含义为零。xyz = (x, y, z)和之间没有区别xyz = x, y, z。逗号的存在具有特殊含义(除非是空元组,否则()确实具有特殊含义)。
'abc',('abc')然后['abc']输入解释器,然后查看它们的含义。
('abc')不是元组,只是字符串'abc'。要实际检查包含字符串的元组中的成员资格'abc',请使用a in ('abc',)。