一段文字的简单词频统计
读取一个txt文本,并统计其中的字符个数,按照出现频率排序输出
首先读取一个txt文本
f=open(r'F:\pythontest\试验.txt','r')
s=list(f.read()) #转化为列表元素
创建一个字典,并在列表中统计个数与每个字符形成键值对存储在字典中
d=dict()
for x in s:
d[x]=d.get(x,0)+1
print(d)
对字典排序
1.使用lambda匿名函数排序,如下
a=sorted(d.items(),key=lambda x:x[1],reverse=True)
print(a)
其中key=lambda x:x[1]中的x[1]里,0表示对键排序,1表示对值排序。reverse=True默认为false,表示升序排序,true表示对降序排序
2.使用operator的itemgetter进行排序
import operator
b = sorted(d.items(), key=operator.itemgetter(1))
3.使用key和value分装成元祖,在进行排序
f = zip(d.keys(), d.values())
c = sorted(f)
自己随便在文本中打了几个字,最后结果如下:

本文介绍了一种简单的词频统计方法,通过读取文本文件,将文本转化为列表,然后使用字典来统计字符出现的频率。文章展示了如何利用Python的字典、lambda函数、operator模块以及元组对字符频率进行排序。
1901

被折叠的 条评论
为什么被折叠?



