Обложка канала

Python - Советы, библиотеки, гайды

10180 @xo_py

Всё для Python программиста :3 Готовый код, советы, лайфхаки, годные библиотеки, уроки и многое другое!

Python - Советы, библиотеки, гайды

4 года назад
Открыть в
Метод send у генератора! yield является таким же выражением, как и, например, some_func(). А значит, оно может возвращать значение. Генератор может не только отправлять данные наружу с помощью оператора yield, но и получать их извне - для этого через метод send нужно эти данные в генератор передать, а генератор эти данные из yield должен принять. В примере(см. выше) - мы посылаем в генератор значения, он возвращает накопленную сумму. Подобное можно сделать и с помощью ООП, но это по сути просто другой способ реализации.