如何在 Python 中对字典进行排序?

字典是一种由键值对组成的数据结构。我们可以使用两个标准对字典进行排序 -

按键排序- 字典按其键的升序排序。不考虑值。

按值排序- 字典按值的升序排序。

方法 1 - 按键对字典进行排序

在这种方法中,字典按其键的升序排序。

输入:

{2:90, 1: 100, 8: 3, 5: 67, 3: 5}

输出:

{1:100, 2:90, 3:5, 5:67, 8:3}

如上所示,我们可以看到字典是根据其键进行排序的。

例子

dic={2:90, 1: 100, 8: 3, 5: 67, 3: 5}

dic2={}

for i in sorted(dic):

   dic2[i]=dic[i]

print(dic2)

输出

{1: 100, 2: 90, 3: 5, 5: 67, 8: 3}

代码行明智的解释

  • 声明一个要排序的字典

  • 声明一个空字典,其中要添加排序的键值对

  • sorted(dic)已排序的所有 dic 键order.It只有键而不是键值对。sorted(dic)将有 [1,2,3,5,8]

  • 对于按排序顺序的每个键,将键和对应的值添加到 dic2 中。

  • dic2 具有按键排序的所有键值对

方法 2 - 按值对字典进行排序

在这种方法中,字典按值的升序排序。

输入:

{2:90, 1: 100, 8: 3, 5: 67, 3: 5}

输出:

{8:3, 3:5 ,5:67 , 2:90, 1:100}

如上所示,我们可以看到字典是根据其值进行排序的。

  • 我们一起使用sorted()和items()方法按值对字典进行排序。

  • 该items()用于检索字典的项目或值。

  • key=lambda x: x[1] 是一种使用 lambda 函数的排序机制。

  • 这为我们提供了键值对,然后使用 将 ehich 转换为字典dict()。

例子

dic={2:90, 1: 100, 8: 3, 5: 67, 3: 5}

dic2=dict(sorted(dic.items(),key= lambda x:x[1]))

print(dic2)

输出

{8: 3, 3: 5, 5: 67, 2: 90, 1: 100}

以上是 如何在 Python 中对字典进行排序? 的全部内容, 来源链接: utcz.com/z/347589.html

回到顶部