python统计文章中单词出现次数实例


Posted in Python onFebruary 27, 2020

python统计单词出现次数

做单词词频统计,用字典无疑是最合适的数据类型,单词作为字典的key, 单词出现的次数作为字典的 value,很方便地就记录好了每个单词的频率,字典很像我们的电话本,每个名字关联一个电话号码。

下面是具体的实现代码,实现了从importthis.txt文件读取单词,并统计出现次数最多的5个单词。

# -*- coding:utf-8 -*-
import io
import re
 
class Counter:
  def __init__(self, path):
    """
    :param path: 文件路径
    """
    self.mapping = dict()
    with io.open(path, encoding="utf-8") as f:
      data = f.read()
      words = [s.lower() for s in re.findall("\w+", data)]
      for word in words:
        self.mapping[word] = self.mapping.get(word, 0) + 1
 
  def most_common(self, n):
    assert n > 0, "n should be large than 0"
    return sorted(self.mapping.items(), key=lambda item: item[1], reverse=True)[:n]
 
if __name__ == '__main__':
  most_common_5 = Counter("importthis.txt").most_common(5)
  for item in most_common_5:
    print(item)

执行效果:

('is', 10)
('better', 8)
('than', 8)
('the', 6)
('to', 5)

知识点补充

1、如何正确读写文件

2、如何对数据进行排序

3、字典数据类型的运用

4、正则表达式的运用

到此这篇关于python统计文章中单词出现次数实例的文章就介绍到这了,更多相关python统计单词出现次数内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python 分析Nginx访问日志并保存到MySQL数据库实例
Mar 13 Python
Python使用Scrapy爬取妹子图
May 28 Python
Python列出一个文件夹及其子目录的所有文件
Jun 30 Python
Python实现的快速排序算法详解
Aug 01 Python
基于Python log 的正确打开方式
Apr 28 Python
python使用webdriver爬取微信公众号
Aug 31 Python
python使用Plotly绘图工具绘制气泡图
Apr 01 Python
python获取微信企业号打卡数据并生成windows计划任务
Apr 30 Python
利用pandas合并多个excel的方法示例
Oct 10 Python
基于python及pytorch中乘法的使用详解
Dec 27 Python
Python如何实现爬取B站视频
May 20 Python
Pandas自定义选项option设置
Jul 25 Python
python GUI库图形界面开发之PyQt5打开保存对话框QFileDialog详细使用方法与实例
Feb 27 #Python
python GUI库图形界面开发之PyQt5输入对话框QInputDialog详细使用方法与实例
Feb 27 #Python
python GUI库图形界面开发之PyQt5单行文本框控件QLineEdit详细使用方法与实例
Feb 27 #Python
Python如何使用OS模块调用cmd
Feb 27 #Python
python之生成多层json结构的实现
Feb 27 #Python
Python查找不限层级Json数据中某个key或者value的路径方式
Feb 27 #Python
python GUI库图形界面开发之PyQt5窗口布局控件QStackedWidget详细使用方法
Feb 27 #Python
You might like
PHP XML备份Mysql数据库
2009/05/27 PHP
关于PHP语言构造器介绍
2013/07/08 PHP
PHP中array_map与array_column之间的关系分析
2014/08/19 PHP
基于PHP生成简单的验证码
2016/06/01 PHP
浅谈PHP中类和对象的相关函数
2017/04/26 PHP
jquery 将disabled的元素置为enabled的三种方法
2009/07/25 Javascript
JQuery 动画卷页 返回顶部 动画特效(兼容Chrome)
2010/02/15 Javascript
javascript 中__proto__和prototype详解
2014/11/25 Javascript
javascript控制层显示或隐藏的方法
2015/07/22 Javascript
js全选按钮的实现方法
2015/11/17 Javascript
利用Vue实现移动端图片轮播组件的方法实例
2017/08/23 Javascript
详解通过源码解析Node.js中cluster模块的主要功能实现
2018/05/16 Javascript
微信小程序按钮去除边框线分享页面功能
2018/08/27 Javascript
原生JS实现自定义下拉单选选择框功能
2018/10/12 Javascript
使用js和canvas实现时钟效果
2020/09/08 Javascript
[48:24]完美世界DOTA2联赛PWL S3 Forest vs INK ICE 第一场 12.09
2020/12/12 DOTA
python 切片和range()用法说明
2013/03/24 Python
Python输出9*9乘法表的方法
2015/05/25 Python
浅析python协程相关概念
2018/01/20 Python
Python实现修改IE注册表功能示例
2018/05/10 Python
python+opencv 读取文件夹下的所有图像并批量保存ROI的方法
2019/01/10 Python
Django CBV与FBV原理及实例详解
2019/08/12 Python
10行Python代码计算汽车数量的实现方法
2019/10/23 Python
OpenCV利用python来实现图像的直方图均衡化
2020/10/21 Python
python全栈开发语法总结
2020/11/22 Python
使用CSS3实现SVG路径描边动画效果入门教程
2019/10/21 HTML / CSS
墨西哥购物网站:Elektra
2020/01/21 全球购物
大学在校生求职信范文
2013/11/21 职场文书
借款协议书范本
2014/04/22 职场文书
银行授权委托书格式
2014/10/10 职场文书
亚布力滑雪场导游词
2015/02/09 职场文书
幼儿园六一主持词开场白
2015/05/28 职场文书
2015国庆节66周年标语
2015/07/30 职场文书
煤矿施工安全协议书
2016/03/22 职场文书
Python 中数组和数字相乘时的注意事项说明
2021/05/10 Python
配置nginx负载均衡
2022/05/06 Servers