在Python中,我有一個使用.append()
添加的數字列表。我需要搜索我的列表,以找到它是否包含兩個設置值之間的任何特定的整數值,例如/ 30和40之間。如何搜索兩個值之間的數字列表?
我知道我可以使用代碼if x in n:
搜索一個整數的列表,但我不知道如何爲多個整數做到這一點。
在Python中,我有一個使用.append()
添加的數字列表。我需要搜索我的列表,以找到它是否包含兩個設置值之間的任何特定的整數值,例如/ 30和40之間。如何搜索兩個值之間的數字列表?
我知道我可以使用代碼if x in n:
搜索一個整數的列表,但我不知道如何爲多個整數做到這一點。
既然你沒有提供任何代碼呢,我給你一個簡單的算法:
for every number in the list
if the number is greater than 30 and less than 40
do something with the number
例如,如果你只需要知道,如果這樣的數量存在,你可以設置一個布爾一旦條件滿足,值就變爲真。
This answer包括一個更簡化的方式來實現你的想法。
非常有用,非常感謝。 –
這是您的一個功能。它返回一個列表,其中包含所有低於和高於給定值的值,包括重複值。如果你想擺脫重複,使用set
。我不會先排序它,因爲這樣會比遍歷列表效率低。
def between(l1,low,high):
l2 = []
for i in l1:
if(i > low and i < high):
l2.append(i)
return l2
l = [1,3,4,5,1,4,2,7,6,5]
print(between(l,2,5))
[3,4,4]
編輯:
或者,嘿,讓我們使用列表理解,如果你到整個簡潔的東西!
l = [1,3,4,5,1,4,2,7,6,5]
l2 = [i for i in l if i > 2 and i < 5]
print(l2)
[3,4,4]
'2 AChampion
min=30
max=40
nums = [8, 32, 35, 180]
nums.append(13)
for x in nums:
if x > min and x < max: print x
'min>和x
好點,謝謝@AChampion。 –
你有更多的代碼,您可以顯示這個? – idjaw
是按姓名排序? – LetzerWille
創建一個新的列表'[x for number_list,如果30
AChampion