在Python中按键或值按升序和降序对字典排序
问题陈述:编写一个Python程序以按键或值对字典进行排序(升序和降序)。
示例
Input: dictionary = {'carl':40,'alan':2,'bob':1,'danny':3} Output: Ascending order is {'alan': 2, 'bob': 1, 'carl':40), 'danny':3} Descending order is {'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('Ascending order is',l) #此打印排序列表 l=list(y.items()) l.sort(reverse=True) #反向排序 print('Descending order is',l) dict=dict(l) #转换字典中的列表 print("Dictionary",dict) #所需的输出是此排序字典
输出结果
Ascending order is [('alan', 2), ('bob', 1), ('carl', 40), ('danny', 3)] Descending order is [('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)您将获得降序排序的字典。