python怎么对字典进行排序

580次阅读
没有评论

共计 773 个字符,预计需要花费 2 分钟才能阅读完成。

在 Python 中,可以使用 sorted() 函数对字典进行排序。字典本身是无序的,但可以将其转换为一个由键值对元组组成的列表,然后对列表进行排序。
以下是一个对字典按键进行升序排序的示例:

my_dict = {'b': 2, 'a': 1, 'd': 4, 'c': 3}
sorted_dict = sorted(my_dict.items())
print(sorted_dict)

输出:

[('a', 1), ('b', 2), ('c', 3), ('d', 4)]

如果要按值进行排序,可以使用 lambda 函数作为 key 参数来指定排序的依据。以下是一个按值进行降序排序的示例:

my_dict = {'b': 2, 'a': 1, 'd': 4, 'c': 3}
sorted_dict = sorted(my_dict.items(), key=lambda x: x[1], reverse=True)
print(sorted_dict)

输出:

[('d', 4), ('c', 3), ('b', 2), ('a', 1)]

在上面的示例中,lambda x: x[1]定义了一个匿名函数,它接受一个参数 x,并返回x[1],即值。key 参数告诉 sorted() 函数按照这个函数的返回值进行排序,reverse=True表示降序排序。
还可以使用 itemgetter() 函数来代替 lambda 函数,使用方法类似。例如,要按值进行升序排序,可以这样写:

from operator import itemgetter
my_dict = {'b': 2, 'a': 1, 'd': 4, 'c': 3}
sorted_dict = sorted(my_dict.items(), key=itemgetter(1))
print(sorted_dict)

输出:

[('a', 1), ('b', 2), ('c', 3), ('d', 4)]

希望对你有所帮助!

丸趣 TV 网 – 提供最优质的资源集合!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-21发表,共计773字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)