【发布时间】:2017-02-01 16:02:52
【问题描述】:
我正在尝试删除列表中不需要的变量。我需要有两个条件:一个是确保我的数组中的值小于变量 A,另一个是确保它们不等于另一个变量 B。
此代码不起作用:
original_Ar = [0,1,2,3,4,5,6,7,8,9,10,11,12]
new_Ar = [s for s in original_Ar if (s != 2) or (s < 10)]
print (new_Ar)
如果我将它分成两个语句(而不是 or 语句) - 它们确实有效:
original_Ar = [0,1,2,3,4,5,6,7,8,9,10,11,12]
print ([s for s in original_Ar if (s != 2)])
print ([s for s in original_Ar if (s < 10)])
知道如何在一行中做到这一点吗?
【问题讨论】:
-
尝试使用
and而不是or -
出于兴趣,您为什么使用
or,因为您在写问题时使用了“and”?
标签: python if-statement