我正在尝试检查列表中是否包含字符串元素。
代码:
if('a' in ['notin']):
print('test')
不打印值,这是有意义的。
代码:
if('a' or 'b' or 'c' in ['notin']):
print('test')
打印test
。为什么“{test”打印为a
,b
或c
不在notin
?
我没有正确实现这个条件?
这不是一个重复的问题,因为基于阅读我写的评论的解决方案是独一无二的:
if any (t in ['a' , 'b' , 'c'] for t in ['a' , 'b']) :
print('in list')
if not any (t in ['a' , 'b' , 'c'] for t in ['d' , 'e']) :
print('not in list')
答案 0 :(得分:-1)
您获得test
显示的原因是评估被视为
((('c' in 'notin') or 'b') or 'a')
((( FALSE ) or TRUE ) or TRUE )
自
if ('b'):
print ('test')
评估为' TRUE'并打印'测试'你的样本也是如此。简短的回答是肯定的,你错误地实施了条件。