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中用max()方法求最大值的介绍
May 15 Python
Django中对通过测试的用户进行限制访问的方法
Jul 23 Python
python发送邮件实例分享
Jul 28 Python
python高级特性和高阶函数及使用详解
Oct 17 Python
Python多图片合并PDF的方法
Jan 03 Python
Django 项目重命名的实现步骤解析
Aug 14 Python
pytorch:model.train和model.eval用法及区别详解
Feb 20 Python
python 线性回归分析模型检验标准--拟合优度详解
Feb 24 Python
python实现FTP文件传输的方法(服务器端和客户端)
Mar 20 Python
Python如何测试stdout输出
Aug 10 Python
Python引入多个模块及包的概念过程解析
Sep 21 Python
解决hive中导入text文件遇到的坑
Apr 07 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实现采集中国天气网未来7天天气
2014/10/15 PHP
thinkphp中html:list标签传递多个参数实例
2014/10/30 PHP
鼠标右击事件代码(asp.net后台)
2011/01/27 Javascript
silverlight线程与基于事件驱动javascript引擎(实现轨迹回放功能)
2011/08/09 Javascript
javascript-简单的日历实现及Date对象语法介绍(附图)
2013/05/30 Javascript
原生Js页面滚动延迟加载图片实现原理及过程
2013/06/24 Javascript
使用jQuery重置(reset)表单的方法
2014/05/05 Javascript
javascript获取和判断浏览器窗口、屏幕、网页的高度、宽度等
2014/05/08 Javascript
JavaScript获取网页、浏览器、屏幕高度和宽度汇总
2014/12/18 Javascript
jQuery中add()方法用法实例
2015/01/08 Javascript
Javascript中innerHTML用法实例分析
2015/01/12 Javascript
JS导出PDF插件的方法(支持中文、图片使用路径)
2016/07/12 Javascript
jquery实现tab选项卡切换效果(悬停、下方横线动画位移)
2017/05/05 jQuery
vue-cli如何引入bootstrap工具的方法
2017/10/19 Javascript
基于Vue的延迟加载插件vue-view-lazy
2018/05/21 Javascript
vue组件之间通信实例总结(点赞功能)
2018/12/05 Javascript
对于防止按钮重复点击的尝试详解
2019/04/22 Javascript
layui 根据后台数据动态创建下拉框并同时默认选中的实例
2019/09/02 Javascript
解决vue初始化项目时,一直卡在Project description上的问题
2019/10/31 Javascript
Ubuntu 下 vim 搭建python 环境 配置
2017/06/12 Python
Python实现从log日志中提取ip的方法【正则提取】
2018/03/31 Python
使用python客户端访问impala的操作方式
2020/03/28 Python
python 比较字典value的最大值的几种方法
2020/04/17 Python
Jupyter Notebook 安装配置与使用详解
2021/01/06 Python
英国舒适型鞋履品牌:FitFlop
2017/05/17 全球购物
美国相机和电子产品零售商:Beach Camera
2020/11/26 全球购物
Shopbop中文官网:美国亚马逊旗下时尚购物网站
2020/12/15 全球购物
创建文明学校实施方案
2014/03/11 职场文书
优秀少先队大队辅导员事迹材料
2014/05/04 职场文书
青年文明号汇报材料
2014/12/23 职场文书
2015年质量月活动总结报告
2015/03/27 职场文书
幼儿园小班教育随笔
2015/08/14 职场文书
2015年幼儿园班主任个人工作总结
2015/10/22 职场文书
申论不会写怎么办?教您掌握这6点思维和原则
2019/07/17 职场文书
解决MySQL存储时间出现不一致的问题
2021/04/28 MySQL
你需要掌握的20个Python常用技巧
2022/02/28 Python