b8c*_*ith 0 python if-statement
这样做的更好方法是什么:
if pattern[0] != [0] or pattern[0] != [0 , 0] or ... so on:
# do something
Run Code Online (Sandbox Code Playgroud)
看来你正在寻找 any
:
if any(pattern[0]):
Run Code Online (Sandbox Code Playgroud)
此解决方案测试是否有任何项目pattern[0]
不相等0
.它的工作原理是因为在Python中0
求值False
.当然,它也假设它pattern[0]
是可迭代的,因为您最初将它与列表进行比较.
此外,无论您尝试做什么,if语句的条件都是错误的.它永远是True
因为pattern[0]
永远不等于[0]
或不等于[0, 0]
.您应该使用and
而不是or
:
if pattern[0] != [0] and pattern[0] != [0 , 0] and ... so on:
Run Code Online (Sandbox Code Playgroud)