我正在尝试将我的输入与数字列表进行比较。
我在代码中放置了打印(“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)
答案 0 :(得分: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)
函数input
返回一个字符串,因此您必须使用int
对其进行转换。
然后我们为列表中的每个x打印x
,该值大于number
变量。
答案 1 :(得分: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