从云南大学校园网上下载一段关于云南大学的介绍文本,将文本保存在名称为“云南大学.txt”文本文件中,注意保存时文件编码要选“UTF-8”。编写程序完成对“云南大学.txt”文件中词汇的出现次数的统计,要求将长度为1的词去掉,并去掉'高校','大学'两个词,按各词出现次数从高到低排序后输出前20项。
7条回答 默认 最新
- 语言-逆行者 2023-06-05 23:26关注
jieba实现,应该符合你的要求:
import jieba from collections import Counter # 打开文件 with open('云南大学.txt', 'r', encoding='utf-8') as f: # 读取文件内容为字符串 text = f.read() # 对文本进行分词并去除长度为1的词和'高校'、'大学'两个词 words = [] for word in jieba.cut(text): if len(word) > 1 and word not in ('高校', '大学'): words.append(word) # 统计词频并排序 word_counts = Counter(words) sorted_word_counts = sorted(word_counts.items(), key=lambda x: x[1], reverse=True) # 输出前20项 for word, count in sorted_word_counts[:20]: print(f'{word}: {count}')
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 3无用
悬赏问题
- ¥15 eclipse无法正常运行
- ¥15 定义了函数,但是无法根据函数定义触发器
- ¥20 5变量卡诺图化简得出与非门电路图
- ¥20 位置依赖的碱基序列独热编码
- ¥15 Python爬取交通拥堵指数数据
- ¥15 使用vba抓取重定向网页问题
- ¥20 付费需求测试程序(细谈)。
- ¥15 为什么这段c++代码会报这么多语法错误?
- ¥20 如何利用C语言实现用最小二乘法选配两个经验公式
- ¥50 vue-codemirror如何对指定行 指定位置的 字符进行背景颜色或者字体颜色的修改?