プログラムとか 思ったこととか 徒然ブログ 投稿一覧へ戻る

タグ "from" が付いている投稿一覧

【 Effective Python, 2nd Edition 】yield from ステートメントでネストしたジェネレータ ( nested generators, composed generators ) を効率よく処理しよう!

Tags: Python , generator , yield , Effective , from

Published 2020年7月1日12:32 by T.Tsuyoshi

ジェネレータを利用することでメモリ消費を抑えることができたり、イテラブル可能な独自クラスを簡単に実装できたり、と多くの利点を享受することができます。 今回は、そんなジェネレータがネストしている場合の効率的な実行方法についてです。 さて、インターバルトレーニング用のプログラムを作りたいと思っています。 最初は速いペースで、ちょっと休んで、次はゆっくりとしたペースで、という指示を出せるようにしたいんです。 そこで、次のような2つのジェネレータを用意しました。 def move(period, speed): """ある期間(period)におけるトレーニングスピード(speed)を指示します""" for _ in range(period): yield speed def stop(period): """ある期間(period)クールダウンします""" for _ …