イテレーターの挙動がわかりません

2020年4月1日
ユーザー
def get_infinite():
    i = 0
    while True:
        yield i * 2
        i += 1

g = get_infinite()
print(next(g))
print(next(g))
print(next(g))

上記のコードで結果が0,2,4となるのが分かりません。

  • 0 * 2 = 0
  • 0 + 1 = 1

なので 1, 3, 5 になると思うのですが...。

この回答を見るにはプレミアムサービスへの登録が必要です

プレミアムサービスとは?