7)ジェネレータを使えば、シンプルなイテレータを簡単に実装できます。インターフェイスを実装したクラスを用意するオーバーヘッドや複雑さを心配する必要はありません。データ群を順に処理するコードを書くときにメモリ内で配列を組み立てなくても済むようになります。無視できないほどの時間がかかってしまうかもしれません。配列を作る代わりに、ジェネレータ関数を書くことになります。値を繰り返し返せるということです。関数をジェネレータで実装しなおしてみましょう。関数は、すべての値を含む配列を作ってそれを返します。結果的に、かなり大きな配列になる可能性があります。超えるメモリを使うことになります。必要なメモリは、Iteratorオブジェクトを作ってジェネレータの内部の状態を記録しておくのに必要なものだけになります。未満で収まるでしょう。";}?>上の例の出力は以下となります。オブジェクトを返します。前進しかできないイテレータオブジェクトと同じように振る舞います。値を送ったり戻したりなどしてジェネレータの状態を操作できます。