如何对包含嵌套列表的列表进行排序,而嵌套列表又包含字典。目的是通过字典VALUE对主列表进行排序

时间:2020-07-10 19:56:25

标签: python list sorting dictionary

我正在寻找使用itemgetter函数对此列表进行排序。我试图按字典关键字“特殊编号”的升序排列列表。 因为嵌套列表处理字典,所以我很难做到这一点。

from operator import itemgetter


lists = [
    [{'time': str, 'ask price': str},
     {'ticker': 'BB','Special number': 10}],
    [{'time': str , 'price': str},
     {'ticker': 'AA', 'Special number': 5}
     ]
]

我尝试使用:

gg = lists.sort(key=itemgetter((1)['special number']))

print(gg)

非常感谢!

1 个答案:

答案 0 :(得分:1)

我认为这里不需要使用itemgetter()。如果具有键'Special number'的字典始终位于列表的索引1中,则足以执行以下操作:

sorted_list = sorted(lists, key=lambda x: x[1]['Special number'])
print(sorted_list)

输出

[[{'price': <class 'str'>, 'time': <class 'str'>},
  {'Special number': 5, 'ticker': 'AA'}],
 [{'ask price': <class 'str'>, 'time': <class 'str'>},
  {'Special number': 10, 'ticker': 'BB'}]]