これが私の辞書です:
a = [{"id":1,"data":{"age":16,"name":a}},
{"id":3,"data":{"age":35,"name":b}},
{"id":2,"data":{"age":9,"name":c}}]
フィールド「年齢」で並べ替えたい。
私が使用するとlambda
:
sorted(a, key=lambda k: k['data']['age'])
でこれを行う方法はitemgetter
?
これが私の辞書です:
a = [{"id":1,"data":{"age":16,"name":a}},
{"id":3,"data":{"age":35,"name":b}},
{"id":2,"data":{"age":9,"name":c}}]
フィールド「年齢」で並べ替えたい。
私が使用するとlambda
:
sorted(a, key=lambda k: k['data']['age'])
でこれを行う方法はitemgetter
?
「a」、「b」、および「c」に引用符を追加することから始めることをお勧めします。そうしないと、辞書 a と文字「a」を混同することになります。
a = [{"id":1,"data":{"age":16,"name":"a"}},
{"id":3,"data":{"age":35,"name":"b"}},
{"id":2,"data":{"age":9,"name":"c"}}]
の場合itemgetter
:
from operator import itemgetter
a = [{"id":1,"data":{"age":16,"name":"a"}},
{"id":3,"data":{"age":35,"name":"b"}},
{"id":2,"data":{"age":9,"name":"c"}}]
l=sorted(a, key = lambda k : itemgetter('age')(itemgetter('data')(k)) )
print (l)