函数定义:从整数列表中返回偶数列表

时间:2015-10-09 20:31:53

标签: python list function variable-assignment definition

使用函数 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 

2 个答案:

答案 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())