我有以下字典:
{1: (8, 3), 0: (8, 0), 2: (2, 3), 3: (2, 0)}
我想用元组键然后按字典的键对它进行排序,以便上面的内容如下:
[{1: (2, 3), 3: (2, 0),0: (8, 3), 1: (8, 0)}]
我写了以下内容:
result_list = sorted(codebook.items(), key= lambda item: item[1][0])
这通过元组键排序,但之后不是字典键。
我该怎么做?
答案 0 :(得分:5)
sorted(codebook.items(), key= lambda item: (item[1][0],item[0]))
这将首先按元组中的第一项排序,然后按字典键
排序只是为了澄清OP的一些事情
字典不可排序,因此您无法拥有“排序”字典
这将返回元组列表而不是字典。回报看起来像
[(dictionary_key,(tuple,values)),(dictionary_key,(tuple,values),...]