Get Mystery Box with random crypto!

Більшість з вас, думаю вже знайомі з оператором return. Сьогод | RITE [ ПРОГРАМУВАННЯ ]

Більшість з вас, думаю вже знайомі з оператором return. Сьогодні я розповім про дещо схоже, а інколи навіть краще

yield - це генератор в Python. Він може повертати значення як і return, але робить це почергово. Іншими словами, він дозволяє створювати послідовність елементів, не зберігаючи усіх їх одночасно в пам'яті

Де це може бути корисно?
Якщо у вас багато даних які потрібно повернути, але пам'яті на них не вистачає, скориставшись генераторами ви зможете вирішити цю проблему.

Код:
def func_generator(a):
for i in range(a):
yield i


nums = func_generator(11)
for n in nums:
print(n)

Ось простий приклад використання yield в коді. Результатом виконання буде виведення чисел від 0 до 10. Чим більше даних - краще видно ефективність роботи yield.

Отже різниця між return та yield у тому, що return - повертає дані та завершує роботу функції, а yield - повертає дані почергово, але не припиняє виконання функції після повернення значення, і дозволяє продовжити її виконання з місця, де вона зупинилась

«Я не програміст, я просто знаю, як програмувати»
Джеймс Гослінг