我想根據條件從列表中獲取樣本。它應該是很容易做到,但我無法做到這一點如下:根據條件從列表中提取值
a = [2,4,5,9,1,6,4]
b = 6
c = [x for x in a if a < b]
基本上,我需要它應該包含的值大於6的任何建議少一個新的列表?
我想根據條件從列表中獲取樣本。它應該是很容易做到,但我無法做到這一點如下:根據條件從列表中提取值
a = [2,4,5,9,1,6,4]
b = 6
c = [x for x in a if a < b]
基本上,我需要它應該包含的值大於6的任何建議少一個新的列表?
或者其他方式:
>>> a = [2,4,5,9,1,6,4]
>>> b = 6
>>> c = filter(lambda x: x < b, a)
>>> c
[2, 4, 5, 1, 4]
你幾乎擁有了作爲伊格納西奧指出:
>>> c = [x for x in a if x < b]
>>> c
[2, 4, 5, 1, 4]
列表內涵是寫這個循環的更長的路:
>>> c = []
>>> for x in a:
... if x < b:
... c.append(x)
...
>>> c
[2, 4, 5, 1, 4]
那麼,你的意思是if x < b
,對吧? 您還有一個問題,那就是數組a中的值是字符串而不是整數。 這樣: [x for x in a if int(x)<b]
'int(x)'? 'x'將始終是一個整數。 –
這正是我所需要的。 – Ibe
請注意,伊格納西奧的答案也將工作。 (見更新)。 –