データを次々に保持する単一のデータ構造に3つのフィルターを適用しています。これをもっときれいにできますか?3つのフィルターをカプセル化するクラスへの1回の呼び出しのように、または1つのフィルターから別のフィルターに渡す(コルーチンのように)後者はかなり怖いように見えるので、前者のパラダイムでうまく実行できますか?
たとえば、 data_listは私のデータを保持します
def _filter1(elem):
return elem < 0
def _filter2(element):
...
def _filter3(element):
...
list = filter(_filter1,list)
list = filter(_filter2,list)
list = filter(_filter3,list)
私はこれがそれを置く最も簡単な方法だろうと想像します:
filters = [_filter1, _filter2, _filter3]
list = apply_filters(*filters)
ありがとうございました。