首页 >后端开发 >Python教程 >如何按键对 Python 字典进行排序?

如何按键对 Python 字典进行排序?

Susan Sarandon
Susan Sarandon原创
2024-12-23 19:09:15729浏览

How to Sort a Python Dictionary by Keys?

如何使用 Python 对字典进行排序

Python 中的字典是无序的数据结构。但是,在某些情况下,需要按字典键对字典进行排序。

示例输入:

{2:3, 1:89, 4:5, 3:0}

所需输出:

{1:89, 2:3, 3:0, 4:5}

标准 Python字典

标准 Python 字典仅从 Python 版本 3.7 开始维护键顺序。在版本 3.7 之前,使用 sorted(d.items()) 函数将无法达到所需的结果,因为这些字典不会保留排序对的顺序。

OrderedDict

对于 Python 3.7 之前的版本,解决方案是使用collections 模块中的 OrderedDict 类。此类按照插入顺序存储键值对,确保顺序一致。

import collections

d = {2:3, 1:89, 4:5, 3:0}

# Create an OrderedDict from sorted key-value pairs
od = collections.OrderedDict(sorted(d.items()))

print(od)

输出:

OrderedDict([(1, 89), (2, 3), (3, 0), (4, 5)])

Python 3

对于 Python 3 及以上版本,.items() 方法应该是用于代替 .iteritems():

for k, v in od.items():
    print(k, v)

输出:

1 89
2 3
3 0
4 5

以上是如何按键对 Python 字典进行排序?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn