Не понимаю, почему функция выводит None
Функция должна выводить список всех делителей передаваемого ей числа (кроме себя и единицы)
def vse_deliteli(integer):
vsedeliteli = list()
for i in range(1, integer):
if integer % i == 0:
vsedeliteli.append(i)
return vsedeliteli.remove(1)
print(vse_deliteli(25))
Результат None, причем проблема именно в list.remove, т. к. когда его убираю, все работает нормально.
def vse_deliteli(integer):
vsedeliteli = list()
for i in range(1, integer):
if integer % i == 0:
vsedeliteli.append(i)
return vsedeliteli
print(vse_deliteli(25))
[1, 5]
Не могу понять, почему получается None
Ответы (1 шт):
Автор решения: KJlUK_KJIAK
→ Ссылка
Возвращайте не процедуру, а список. вот так будет работать как вы хотите:
def vse_deliteli(integer):
vsedeliteli = []
for i in range(1, integer):
if integer % i == 0:
vsedeliteli.append(i)
vsedeliteli.remove(1)
return vsedeliteli