タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

generatorに関するkkoiroのブックマーク (2)

  • Pythonのイテレータとジェネレータ - Qiita

    Pythonのイテレータ(iterator)とジェネレータ(generator)についてまとめてみます。 (追記2018.12.25: Python3の文法に全面的に置き換えました) イテレータ: 要素を反復して取り出すことのできるインタフェース ジェネレータ: イテレータの一種であり、1要素を取り出そうとする度に処理を行い、要素をジェネレートするタイプのもの。Pythonではyield文を使った実装を指すことが多いと思われる Python組み込みのコレクション(list, tuple, set, dictなど)はどれもイテレーション可能ですが、組み込みのコレクションを使った繰り返し処理ではあらかじめコレクションに値を入れておく必要があるため、以下のようなケースではイテレータやジェネレータを自分で実装したいというケースがあると思います。 無限に繰り返すイテレーション 要素すべてをあらかじめ

    Pythonのイテレータとジェネレータ - Qiita
    kkoiro
    kkoiro 2018/04/26
    初めの方にある箇条書きのgeneratorの説明がわかりやすい。
  • Pythonのジェネレーターってなんのためにあるのかをなるべく分かりやすく説明しようと試みた - Qiita

    はじめに Pythonのジェネレーターについて説明してあるページは他にもありますが、英語だったり、あまり自分としてしっくりこないものが多かったので、自分の中で考えを整理することも兼ねて、ジェネレーターについて自分なりに説明しようと思います。 断っておくと、筆者は基的ににわかなので、誤ったことを口走るかもしれません。間違い等がありましたらコメントしていただけると自分の勉強にもなるので大変助かります。 あと、ここで紹介するジェネレーターの利用法はあくまでも利用法の数例で、決して他に利用法がないというわけではありません。 ジェネレーターとは? 詳しい、正確な説明は他にも素晴らしい記事があるので、そちらをご参照ください: Pythonのイテレータとジェネレータ 簡潔に説明すると、「通常の関数の、return文をyieldに置き換えたもの」ととりあえずは思ってください。(色々と違いますが、とりあえ

    Pythonのジェネレーターってなんのためにあるのかをなるべく分かりやすく説明しようと試みた - Qiita
    kkoiro
    kkoiro 2018/04/26
    関数型てきに必要なときに必要な分だけ計算が発生するイメージ?
  • 1