大家好,小编来为大家解答以下问题,python语言程序设计基础选择题题库,python语言程序设计基础题库电子版,现在让我们一起来看看吧!
对一篇英文文章进行词频统计重点在于内容去噪和归一化,可用split()进行分词。本文以《飘》为例,统计词频最高的前十位。
1.读取文件,通过lower()、replace()函数将所有单词统一为小写,并用空格替换特殊字符。
def gettext():
txt = open("","r",errors='ignore').read()
txt = txt.lower()
for ch in '!"#$&()*+,-./:;<=>?@[\\]^_{|}·~‘’':
txt = txt.replace(ch,"")
return txt
2.对处理后的文本进行词频统计存入字典。
txt = gettext()
words = txt.split()
counts = {}
for word in words:
counts[word] = (word,0) + 1
3.统计结果存为列表类型,按词频由高到低进行排序,输出前十位。
items = list(counts.items())
(key=lambda x:x[1],reverse=True)
for i in range(10):
word,count = items[i]
print("{0:<10}{1:>5}".format(word,count))
输入:
输出: