2015-10-09 2 views
0

Используйте функцию print_even_values ​​ с вводом целочисленного списка и печатает каждое четное число в списке. Вызов print_even_values ​​([2, 8, 1, 9, 0, 19, 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] 

против (отдельная линия)

2 
4 
2 
4 
6 
+0

результат форматирования – Phani

ответ

0

Я думаю, что проблема вы возвращаете номер, когда он еще, вместо того, чтобы вернуться в список четных чисел. Вы должны хранить номер, когда он четный, и затем вернуть список:

def print_even_numbers(number_list): 
    even_numbers = [] # define the empty list of even numbers 
    for number in number_list: 
     if number % 2 == 0: # check if number is even 
      even_numbers.append(number) # if it is, store it 
     return even_numbers # Return the list of even numbers