Простая функция-генератор. Для чего нужен yield

Описание к видео Простая функция-генератор. Для чего нужен yield

Рассмотрим, что такое функция-генератор, в чем ее особенности и плюсы.

Любая функция, содержащая ключевое слово yield является функцией-генератором (независимо от наличия return) и при вызове возвращает объект-генератор.
Важные моменты:
1) ленивый, не выполняется пока не попросить значение
2) одноразовый -при исчерпании кидает StopIteration (в for этого не видно, ибо обрабатывается внутри)
3) после выполнения yield встает на паузу, при этом сохраняет все внутреннее состояние (аргументы, локальные переменные)
4) при повторном запросе (next) продолжает работу с места остановки

Удобен при работе с большими данными, но и в целом может применяться там, где нам нужно получать наборы данных, обрабатывать их.

Ссылки:
https://docs.python.org/3/glossary.ht...

https://docs.python.org/3/reference/s...

https://docs.python.org/3/reference/e...

https://docs.python.org/3/tutorial/cl...

https://docs.python.org/3/reference/e...

Присоединяйся к помощи каналу, будет интересно)
✔️Бусти https://boosty.to/python_russian/donate
✔️Юмани 410011506612886

Будь первым везде и всегда, включай уведомления о новых выпусках 🔔

#Python #PythonRussian #PyCharm

Комментарии

Информация по комментариям в разработке