问题陈述:编写一个Python程序以按键或值对字典进行排序(升序和降序)。
示例
Input:
dictionary={'carl':40,'alan':2,'bob':1,'danny':3}
Output:
Ascendingorderis{'alan':2,'bob':1,'carl':40),'danny':3}
Descendingorderis{'danny':3,'carl':40,'bob':1,'alan':2}
算法:拿字典。
将其转换为列表。
现在,按升序或降序对列表进行排序。
再次转换将排序后的列表转换成字典。
打印输出
Python代码按升序和降序对字典进行排序
#您可以将输入也视为整数,这也是'
#也将为此工作,例如:{1:2,3:4,4:3,2:1,0:0}
y={'carl':40,'alan':2,'bob':1,'danny':3}
l=list(y.items())#迷恋给定的命令。进入清单
#在Python字典中,items()方法用于返回列表
#带有值的所有字典键。
l.sort()#排序列表
print('Ascendingorderis',l)#此打印排序列表
l=list(y.items())
l.sort(reverse=True)#反向排序
print('Descendingorderis',l)
dict=dict(l)# 转换字典中的列表
print("Dictionary",dict)#所需的输出是此排序字典
输出结果
Ascendingorderis[('alan',2),('bob',1),('carl',40),('danny',3)]
Descendingorderis[('danny',3),('carl',40),('bob',1),('alan',2)]
Dictionary{'bob':1,'carl':40,'alan':2,'danny':3}
代码说明:
在这里,我们只学习如何按键或值对字典进行排序。因此,最好的方法是将整个词典转换为列表。为了进行转换,我们使用了l = list()y.items()
这里的一个重要功能是items()。这是什么?
因此,在Python字典中,items()方法用于返回带有所有带有值的字典键的列表。
现在,在那之后,我们使用Sort函数,即 l.sort()
对列表进行排序,然后重要的一点是,通过dict =将列表再次转换为Dictionarydict(l)
因此,在此之后,我们将按升序获得排序后的Dictionary。
为了以降序执行所有这些操作,只需做一件事i.e而不是l.sort()
使用l.sort(reverse = True)您将获得降序排序的字典。