2016-12-01 57 views
0

我想比較我的輸入和數字列表。需要幫助比較和顯示數字

我把打印(「2」)在代碼中,看看我做的是否正確,但我不斷收到錯誤。

這是我到目前爲止有:

list_a = [2,4,6,8,10,12] 
number = input("Input a number:",) 

def main(list_a,number): 
    print("The Numbers in the list are:",list_a) 
    for x in list_a: 
     if number < x: 
      print("2") 

main(list_a, number) 

回答

3

下面應該工作:

list_a = [2,4,6,8,10,12] 
number = int(input("Input a number:",)) 

def main(list_a,number): 
    print("The Numbers in the list are:",list_a) 
    for x in list_a: 
     if number < x: 
      print(x) 

main(list_a, number) 

所以你必須使用int將其轉換input返回一個字符串的函數。

然後,我們打印x列表中的每個x大於我們的number變量。

0

的另一種方法來實現,其使用列表理解:

list_a = [2, 4, 6, 8, 10, 12] 
number = input("Input a number: ",) 

def main(list_a, number): 
    print("The numbers in the list are: ", list_a) 
    greater_than_x = [x for x in list_a if x > int(number)] # this is a list comprehension 
    for y in greater_than_x: # we print out all numbers that are greater than number 
     print(y) 

main(list_a, number) 

輸出例如:

>>> number = input("Input a number: ",) 
Input a number: 6 
>>> main(list_a, number) 
('The numbers in the list are: ', [2, 4, 6, 8, 10, 12]) 
8 
10 
12