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设置windows桌面壁纸的实现代码
Jan 28 Python
零基础写python爬虫之urllib2中的两个重要概念:Openers和Handlers
Nov 05 Python
python操作redis的方法
Jul 07 Python
简介Django框架中可使用的各类缓存
Jul 23 Python
python黑魔法之参数传递
Feb 12 Python
Numpy中的mask的使用
Jul 21 Python
python+numpy+matplotalib实现梯度下降法
Aug 31 Python
Python 带有参数的装饰器实例代码详解
Dec 06 Python
python单例模式的多种实现方法
Jul 26 Python
Django为窗体加上防机器人的验证码功能过程解析
Aug 14 Python
详解django中Template语言
Feb 22 Python
Python matplotlib绘制图形实例(包括点,曲线,注释和箭头)
Apr 17 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设计模式之装饰器模式定义与用法详解
2018/04/02 PHP
利用javascript移动div层-javascript 拖动层
2009/03/22 Javascript
jQuery的一些特性和用法整理小结
2010/01/13 Javascript
jquery 选项卡效果 新手代码
2011/07/08 Javascript
理解和运用JavaScript的闭包机制
2015/08/13 Javascript
jquery实现通用的内容渐显Tab选项卡效果
2015/09/07 Javascript
学习JavaScript设计模式之责任链模式
2016/01/18 Javascript
再次谈论Javascript中的this
2016/06/23 Javascript
form+iframe解决跨域上传文件的方法
2016/11/18 Javascript
jQuery实现用户输入自动完成功能
2017/02/13 Javascript
js实现旋转木马效果
2017/03/17 Javascript
微信小程序中页面FOR循环和嵌套循环
2017/06/21 Javascript
vue单页应用加百度统计代码(亲测有效)
2018/01/31 Javascript
实例讲解JavaScript预编译流程
2019/01/24 Javascript
JointJS JavaScript流程图绘制框架解析
2019/08/15 Javascript
解决vue初始化项目时,一直卡在Project description上的问题
2019/10/31 Javascript
openLayer4实现动态改变标注图标
2020/08/17 Javascript
应用OpenCV和Python进行SIFT算法的实现详解
2019/08/21 Python
Python OpenCV读取显示视频的方法示例
2020/02/20 Python
Win10环境中如何实现python2和python3并存
2020/07/20 Python
Pytorch - TORCH.NN.INIT 参数初始化的操作
2021/02/27 Python
Pretty Little Thing美国:时尚女性服饰
2018/08/27 全球购物
LODI女鞋在线商店:阿利坎特的鞋类品牌
2019/02/15 全球购物
葡萄牙航空官方网站:TAP Air Portugal
2019/10/31 全球购物
应届毕业生自荐信例文
2014/02/26 职场文书
探亲假请假条
2014/04/11 职场文书
品牌推广策划方案
2014/05/28 职场文书
办公室文员岗位职责范本
2014/06/12 职场文书
幼师求职信
2014/06/23 职场文书
党的群众路线教育实践活动制度建设计划方案
2014/10/31 职场文书
博士给导师的自荐信
2015/03/06 职场文书
大学感恩节活动总结
2015/05/05 职场文书
2016年十一促销广告语
2016/01/28 职场文书
创业计划书之DIY自助厨房
2019/09/06 职场文书
Python机器学习应用之基于线性判别模型的分类篇详解
2022/01/18 Python
Nginx性能优化之Gzip压缩设置详解(最大程度提高页面打开速度)
2022/02/12 Servers