代码
for item in ('sin', 'cos', 'sinc', 'sin^2'):
print(item not in ('sin^2'))
产生结果
False
True
True
False
但是
for item in ('sin', 'cos', 'sinc', 'sin^2'):
print(item not in ['sin^2'])
产生结果
True
True
True
False
为什么?
答案 0 :(得分:1)
该表达式被视为带括号的字符串,而不是元组。因此,它最终是一个子字符串匹配项。要将其定义为单元素元组,必须有逗号结尾:
print(item not in ('sin^2',))