通过Python的内置函数获取一个文本中,一个单词的出现频率

今天遇到这么一道题:有一篇英文文章保存在 a.txt 中,请用python实现统计这篇文章内每个单词的出现频率,并返回出现频率最高的前10个单词及其出现次数。

这个题目运用了python的内置函数collections
话不多说,直接上代码

一、首先我们的有一个测试文档。
我这里就用了一个a.txt文档,大家可以自己写一个,或者随意百度扒一个。
下面就是我写的那个txt文档,用来测试这个就是我的a.txt大家可以参考
二、直接上代码

b=[]   #这个列表是用来存储文章中出现的单词的。
import collections    #引用这个内置函数
with open('a.txt') as f:   #打开这个文件
    str1=f.read()

for i in str1:
    if i in b:   #判断这里,大概解释一下,每当出现一个单词或者字母,我们就判断有没有存储在b列表中
        pass     #如果在的话我们就跳过
    else:
        b.append(i)  #如果没有存储在b列表当中我们就把它存进去

for i in b:
    print(i,collections.Counter(str1)[i])   #现在调用这个函数运行出来结果就ok
  
  ~~~~~~~下面是运行出来的结果,大家可以看一眼~~~~~~~~~~
    a 2
	b 2
	c 2
	d 2
	e 2
	f 3
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值