Python中实现字典元素的排序
我们都知道python中的字典是无序的,而要怎么样对它进行排序呢,在这笔者提供一种方法
把字典先转变为一个元组,再放进列表里利用lambda函数进行对"值"来进行排序
以下为代码部分:
-
#这里我们是对一段字符进行排序再打印
-
#统计输入的字符串,按字符出现频率并按照降序方式打印字母
-
text = input("请输入一段文本(回车退出):")
-
while text != '':#如果为空则退出循环
-
d = {}#创立一个空字典
-
for word in text:#遍历文本
-
d[word] = d.get(word,0) + 1#这里提供了两种统计次数的方法
-
# d[word]=text.count(word)
-
#转为列表类型对其排序
-
ls = list(d.items())
-
ls.sort(key=lambda x:x[1],reverse = True)#以记录字典的值来排序
-
for i in range(len(ls)):
-
word, count = ls[i]
-
print("{0:<10}{1:>5}".format(word,count))#输出格式化控制
-
text = input("请输入一段文本(回车退出):")
这里我们就实现了对字典元素的排序。
转载声明:
作者:HighLight_FanYa
出处:https://www.cnblogs.com/guguguhuha/p/14164832.html
由于博主的水平不高,不足和错误之处在所难免,希望大家能够批评指出。
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。