【週刊ドットインストール】 考える力を養うための新クラス『データで学ぶアルゴリズム』を256timesでリリース!
def get_infinite(): # ジェネレータ i = 0 while True: yield i * 2 i += 1 g = get_infinite() print(next(g)) print(next(g)) print(next(g))
このソースを見るとiはローカル変数に見えるのですが なぜ、前回の値を保持しているのでしょうか?
ドットインストールは、3分動画でマスターできるプログラミング学習サービスです。
3分で気軽に学習でき、スマートフォンからも視聴可能です。ホームページやWebサービスの制作を通して、実践的にプログラミングを学べます。
他にも、ゲーム制作やデータ分析・機械学習・AIに使われる言語まで幅広くカバー。学びたい分野のレッスンがきっと見つかります。
この回答を見るにはプレミアムプランへの登録が必要です
このソースを見るとiはローカル変数に見えるのですが
なぜ、前回の値を保持しているのでしょうか?