В этой статье мы расскажем про основные различия между yield и return в Python. А для лучшего понимания этих различий приведем пару примеров. Встроенное ключевое слово yield используется для создания функций-генераторов. Функция, содержащая yield, может генерировать сразу несколько результатов. Она приостанавливает выполнение программы, отправляет значение результата вызывающей стороне и возобновляет выполнение с последнего yield. Кроме того, функция, содержащая yield, отправляет сгенерированную серию результатов в виде объекта-генератора...
Работали ли вы с настолько огромным объемом данных, что он переполнял память компьютера? Я часто с этим сталкивался, пока не услышал о генераторах. Иногда на собеседованиях или иных тестах на оценку знаний предлагают такую задачу: Перед вами два выражения. Определите, что выведет каждое из них и в чем их разница. a = [i * i in range(5)] b = (i * i in range(5)) Если вы сомневаетесь в своих знаниях, то эта статья для вас. Использование Генераторов Функции генераторов (их описание можно почитать в PEP 255) представляют собой особый вид функций, которые возвращают «ленивый итератор»...