0
タイトルを改善する方法を知っている人なら誰でも歓迎すべきものがあります。辞書リストから除外し、各項目の値が最も低い
list = [
{ 'id' : 1, 'value' : 1 },
{ 'id' : 2, 'value' : 2 },
{ 'id' : 1, 'value' : 2 },
{ 'id : 2, 'value' : 1 },
]
私はkey=itemgetter('id','value')
ことによってそれをソートして取得しました
list = [
{ 'id' : 1, 'value' : 1 },
{ 'id' : 1, 'value' : 2 },
{ 'id' : 2, 'value' : 1 },
{ 'id : 2, 'value' : 2 },
]
今、私はフィルタリングしたい、IDごとに、それが取得するための最低値だ:
私は辞書のリストを持っています
list = [
{ 'id' : 1, 'value' : 1 },
{ 'id' : 2, 'value' : 1 },
]
私の現在のソリューションは、この
のようなものですnew_list = []
old_id = -1
for item in list:
new_id = item['id']
if new_id != old_id:
new_list.append(item)
old_id = new_id
しかし、私はフィルタ、マップ、削減、ラムダ関数とリスト内包してここに行ってクールなものをたくさん見てきましたが、私の問題にクリーンな解決策があることができれば疑問に始めましたか? id
によって
は 'に見てitertools.groupby'。しかし、作業しているコードであれば、次の便利な部分に移動してください。 – jonrsharpe
あなたは 'new_list.append(item)'を書くつもりだと思う。 –
Thanks Jim、それを編集しました:) – MrJalapeno