使用函数 print_even_values 输入整数列表,并在列表中打印每个偶数。调用 print_even_values([2,8,1,9,0,19,24])会在shell窗口中生成此输出:
2 8 0 24
我的方法是:
def print_even_numbers(n:list) -> list:
'''Return a list of even numbers given a list of integers'''
for x in list:
if x % 2 == 0:
return(x)
assert print_even_numbers([2, 4, 2, 4, 5, 6]) == [2, 4, 2, 4, 6]
assert print_even_numbers([4, 1, 3, 2, 5, 9]) == [4, 2]
,但是有错误。另外,如何使我的输出类似于问题? (即
[2, 4, 2, 4, 6]
vs.(单独的一行)
2
4
2
4
6
答案 0 :(得分:0)
我认为问题是你在偶数时返回一个数字,而不是返回偶数列表。你应该在偶数时存储一个数字,然后返回列表:
legal
答案 1 :(得分:0)
另外,您也可以使用如下所示的较长版本:
def generate_evens():
result = []
for x in range(1, 50):
if x % 2 == 0:
result.append(x)
return result
print(generate_evens())
您有一个简短的应用程序:
def generate_evens1():
return [x for x in range(1, 50) if x % 2 == 0]
print(generate_evens1())