リストを含む辞書をソートしようとしています。たとえば、この辞書があるとします。
a = {'q': {3: [4, 2, 7]}, 'a': {1: [5, 45, 11]}, 'e': {23: [11, 45, 2]}}
並べ替え後の出力を次のようにします。
[(e, {23:[11,45,2}]), (a, {1:[5,45,11]}), (q,{3,[4,2,7]})]
リストの最初の項目をソートのキーとして使用して、実際には逆にソートしています。
上記のように、2 つのリストの最初の項目が同一である場合、リストに関連付けられた文字列 (メイン キー) をアルファベット順に並べ替えます。
その辞書のリストをソートしているため、辞書を含むタプルの出力を取得できるかどうかはわかりません。
私はこのコードを試しました:
sorted((x,b.items(), key=lambda x:[1][2]) for x,b in a.items())
無効な構文のエラーが発生しましたが、何が問題なのかわかりません。