1

重複の可能性:
2 つの出力リスト (つまり、リストのパーティション) を取得する filter() に相当する python

Enumerable.partitionPython 標準ライブラリに、 Ruby の動作をシミュレートし、渡された述語関数に基づいて 2 つのリスト/タプルを取得するためにオブジェクトを 1 回だけ反復する組み込み関数またはモジュールはあり ますか?

4

1 に答える 1

1

この質問から恥知らずに盗まれました-次のtee機能を使用できますitertools

from itertools import tee

def split_on_condition(seq, condition):
    l1,l2 = tee((condition(item),item) for item in seq)
    return (i for p, i in l1 if p), (i for p, i in l2 if not p)
于 2012-09-12T12:00:39.697 に答える