Python return возвращает некорректные данные
Функция принимает нижнюю и верхнюю границы диапазона чисел. В результате работы функция должна вернуть список четных чисел в последовательности. Также код должен корректно отрабатывать, если начальное число(аргумент) больше конечного.
Написал код, но функция возвращает пустой список. В чем может быть проблeма?
def paired_numbers(start, end):
list_of_paired = []
if start < end:
temp = start
start = end
end = temp
for i in range(start, end):
if i % 2 == 0:
list_of_paired.append(i)
return (list_of_paired)
start = int(input("Введите нижнюю границу: "))
end = int(input("Введите верхнюю границу: "))
print(paired_numbers(start, end))
print("=" * 100)
Ответы (1 шт):
Автор решения: dresqd
→ Ссылка
- У Вас
returnне на том уровне... Удалите один tab, и скобки в return не нужны. - Условие start < end не имеет смысла.
Как-то так в итоге должно выглядеть. Возьмите на заметку способ для "поменять местами start и end" без темповой переменной
def paired_numbers(start, end):
if start > end:
start, end = end, start
output_list = []
for each in range(start, end):
if each % 2 == 0:
output_list.append(each)
return (output_list)
print(paired_numbers(99, -99))