タグ "iteration" を含むブログ一覧 投稿一覧へ戻る

Python Cookbook [Implementing the Iterator Protocol : イテレータープロトコルの実装]

Tags: generator , iterable , iteration , iterator , yield , python , cookbook

Published 2020年5月9日9:29 by T.Tsuyoshi

Problem: イテレーションをサポートするカスタムオブジェクトを作成したいが、イテレータプロトコルの実装では苦労したくない。 Solution: イテレーションをサポートするオブジェクトを作成する一番簡単な手段は generator 関数を利用することでしょう。 " Delegating Iteration " の項で取り上げたクラスを再利用してみます。 今回は Nod…

Python Cookbook [Creating New Iteration Patterns with Generators : ジェネレーターを利用した独自イテレーションパターンの実装]

Tags: generator , iterable , iteration , yield , python , cookbook

Published 2020年5月7日19:19 by T.Tsuyoshi

Problem: range() や reversed() といった組み込み関数とは異なるイテレーションパターンを実装したい。 Solution: generator 関数を利用して実装します。 例えば、ある範囲内、あるステップ数で浮動小数点数を生成したいなら次のようになるでしょう。 def float_range(start, stop, step): …

Python Cookbook [Manually Consuming an Iterator : 手作業によるイテレーション操作]

Tags: iterable , iteration , stopiteration , python , cookbook

Published 2020年4月24日21:08 by T.Tsuyoshi

今回からイテレーション関連の tips を取り上げていきます。 Problem: イテラブル (iterable) 中の要素を for ループを使わずに処理しろ、って、無茶言うよ、本当に。 Solution: 手作業でイテラブルを処理するには next() 関数を利用し、コード内で StopIteration 例外を捕まえるようにします。 例えば、ファイルから手作業で1…