Итерация в функции происходит только один раз
Почему итерация происходит в функции только один раз? Выдает только первый ключ и его значение. Вне функции итерация происходит полностью
def dict_ru(my_dict):
for item in my_dict.items():
return item
my_di = {'name': 'pavel', '34': '123'}
print(dict_ru(my_di))
Ответы (1 шт):
Автор решения: CrazyElf
→ Ссылка
Посмотрите для примера такой код:
def dict_ru(my_dict):
for item in my_dict.items():
yield item
my_di = {'name': 'pavel', '34': '123'}
print(*dict_ru(my_di))
Вывод:
('name', 'pavel') ('34', '123')
return сразу прекращает работу функции, используйте yield, чтобы вернуть несколько результатов, и *, чтобы проитерироваться по всем этим результатам.