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读写unicode文件的方法
Jul 10 Python
Python操作MongoDB详解及实例
May 18 Python
Python中执行存储过程及获取存储过程返回值的方法
Oct 07 Python
解决python 输出是省略号的问题
Apr 19 Python
python将处理好的图像保存到指定目录下的方法
Jan 10 Python
python使用selenium实现批量文件下载
Mar 11 Python
Django基础知识 web框架的本质详解
Jul 18 Python
python爬虫 线程池创建并获取文件代码实例
Sep 28 Python
Python装饰器使用你可能不知道的几种姿势
Oct 25 Python
django中嵌套的try-except实例
May 21 Python
Python采集股票数据并制作可视化柱状图
Apr 04 Python
使用scrapy实现增量式爬取方式
Jun 21 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 翻页 实例代码
2009/08/07 PHP
dedecms 批量提取第一张图片最为缩略图的代码(文章+软件)
2009/10/29 PHP
php去除重复字的实现代码
2011/09/16 PHP
php转换颜色为其反色的方法
2015/04/27 PHP
JavaScript监测ActiveX控件是否已经安装过的代码
2008/09/02 Javascript
Javascript 面向对象 继承
2010/05/13 Javascript
11款新鲜的jQuery插件[附所有demo下载]
2011/01/24 Javascript
使用js检测浏览器是否支持html5中的video标签的方法
2014/03/12 Javascript
Jquery Ajax方法传值到action的方法
2014/05/11 Javascript
jquery引用方法时传递参数原理分析
2014/10/13 Javascript
jQuery实现带幻灯的tab滑动切换风格菜单代码
2015/08/27 Javascript
JS实现兼容性较好的随屏滚动效果
2015/11/09 Javascript
jQuery实现的AJAX简单弹出层效果代码
2015/11/26 Javascript
拥Bootstrap入怀——导航栏篇
2016/05/30 Javascript
NodeJS链接MySql数据库的操作方法
2017/06/27 NodeJs
vue2.x 父组件监听子组件事件并传回信息的方法
2017/07/17 Javascript
JS实现不用中间变量temp 实现两个变量值得交换方法
2018/02/04 Javascript
vue watch普通监听和深度监听实例详解(数组和对象)
2018/08/16 Javascript
jquery无缝图片轮播组件封装
2020/11/25 jQuery
微信小程序用户授权、位置授权及获取微信绑定手机号
2019/07/18 Javascript
微信小程序 拍照或从相册选取图片上传代码实例
2019/08/28 Javascript
JS回调函数 callback的理解与使用案例分析
2019/09/09 Javascript
关于vue-cli3打包代码后白屏的解决方案
2020/09/02 Javascript
Python实现扫描局域网活动ip(扫描在线电脑)
2015/04/28 Python
在Python中编写数据库模块的教程
2015/04/29 Python
Python正则表达式和re库知识点总结
2019/02/11 Python
Django框架视图层URL映射与反向解析实例分析
2019/07/29 Python
利用css3如何设置没有上下边的列表间隔线
2017/07/03 HTML / CSS
伊利莎白雅顿官网:Elizabeth Arden
2016/10/10 全球购物
巴基斯坦购物网站:Goto
2019/03/11 全球购物
eBay比利时购物网站:eBay.be
2019/08/09 全球购物
教师党员承诺书2015
2015/01/21 职场文书
介绍信的写法
2015/01/31 职场文书
新课程改革心得体会
2016/01/22 职场文书
人力资源部工作计划
2019/05/14 职场文书
浅谈如何提高PHP代码的质量
2021/05/28 PHP