📅  最后修改于: 2023-12-03 15:04:12.600000             🧑  作者: Mango
在Python中,您可以使用sorted()
函数来排序字典。但是,它仅限于使用单个键来对字典排序。如何按元组的多个键对字典进行排序呢?在本篇文章中,我们将向您展示如何按元组键积对字典进行排序。
以下是一个示例字典,其中包含三个键:“标签”、“日期”和“评论”:
my_dict = {
('chinese food', '2021-05-12'): 50,
('italian food', '2021-05-10'): 30,
('indian food', '2021-05-11'): 40
}
我们将使用Python内置的sorted()
函数来按元组键积对字典进行排序。
sorted_dict = dict(sorted(my_dict.items(), key=lambda x: (x[0][1], x[0][0])))
print(sorted_dict)
这是输出,它按日期和标签对字典进行了排序:
{('italian food', '2021-05-10'): 30, ('indian food', '2021-05-11'): 40, ('chinese food', '2021-05-12'): 50}
从输出可以看出,字典按元组的第二个键(即日期)进行了排序,并且如果两个元组的第二个键相同时,会按第一个键(即标签)进行排序。要更改排序顺序,请更改lambda
表达式中的顺序。
在Python中,使用sorted()
函数按元组键积对字典进行排序十分容易。只需使用lambda
表达式指定要使用的键即可。无论是按单个键还是按多个键对字典进行排序,Python都使这项任务变得十分容易。