Я знаю, что генераторы в Python поддерживают локальное состояние. Я прочитал пример с последовательностью Фибоначчи в PEP255.
https://www.python.org/dev/peps/pep-0255/
Однако я до сих пор не понимаю последствий этого. А именно,
1) почему это полезно?
2) что произойдет, если генераторы НЕ поддерживают локальное состояние? Можете ли вы показать мне на простом примере в коде?
3) действительно ли поддержание локального состояния связано со способностью генератора сохранять память, создавая только одно значение за раз во время итерации, а не хранить весь итерируемый объект впамять?
4) Есть ли недостатки в поддержании локального состояния?