Python实现的统计文章单词次数功能示例


Posted in Python onJuly 08, 2019

本文实例讲述了Python实现的统计文章单词次数功能。分享给大家供大家参考,具体如下:

题目是这样的:你有一个目录,放了你一个月的日记,都是 txt,为了避免分词的问题,假设内容都是英文,请统计出你认为每篇日记最重要的词。

其实就是统计一篇文章出现最多的单词,但是要去除那些常见的连词、介词和谓语动词等,代码:

#coding=utf-8
import collections
import re
import os
useless_words=('the','a','an','and','by','of','in','on','is','to')
def get_important_word(file):
  f=open(file)
  word_counter=collections.Counter()
  for line in f:
    words=re.findall('\w+',line.lower())
    word_counter.update(words)
  f.close()
  most_important_word=word_counter.most_common(1)[0][0]
  count=2
  while(most_important_word in useless_words):
    most_important_word=word_counter.most_common(count)[count-1][0]
    count+=1
  num=word_counter.most_common(count)[count-1][1]
  print 'the most important word in %s is %s,it appears %d times'%(file,most_important_word,num)
if __name__=='__main__':
  filepath='.'
  for dirpath,dirname,dirfiles in os.walk(filepath):
    for file in dirfiles:
      if os.path.splitext(file)[1]=='.txt':
        abspath=os.path.join(dirpath,file)
        if os.path.isfile(abspath):
          get_important_word(abspath)

学习笔记:

collections模块,是python内建的模块,提供了许多有用的集合类。我们这里用到了Counter类和其中的most_common()方法

Python 相关文章推荐
初步介绍Python中的pydoc模块和distutils模块
Apr 13 Python
使用python3+xlrd解析Excel的实例
May 04 Python
使用EduBlock轻松学习Python编程
Oct 08 Python
pygame游戏之旅 创建游戏窗口界面
Nov 20 Python
python用插值法绘制平滑曲线
Feb 19 Python
Python设计模式之观察者模式原理与用法详解
Jan 16 Python
pyqt5 删除layout中的所有widget方法
Jun 25 Python
Django 创建/删除用户的示例代码
Jul 24 Python
python实现百度OCR图片识别过程解析
Jan 17 Python
Python实现遗传算法(二进制编码)求函数最优值方式
Feb 11 Python
python opencv 图像边框(填充)添加及图像混合的实现方法(末尾实现类似幻灯片渐变的效果)
Mar 09 Python
python 图像增强算法实现详解
Jan 24 Python
用python建立两个Y轴的XY曲线图方法
Jul 08 #Python
python绘制双Y轴折线图以及单Y轴双变量柱状图的实例
Jul 08 #Python
简单了解python的内存管理机制
Jul 08 #Python
python用for循环求和的方法总结
Jul 08 #Python
python面试题之列表声明实例分析
Jul 08 #Python
python 一个figure上显示多个图像的实例
Jul 08 #Python
Python3实现汉语转换为汉语拼音
Jul 08 #Python
You might like
PHP 设置MySQL连接字符集的方法
2011/01/02 PHP
Php Image Resize图片大小调整的函数代码
2011/01/17 PHP
php array_walk() 数组函数
2011/07/12 PHP
php删除数组元素示例分享
2014/02/17 PHP
php+layui数据表格实现数据分页渲染代码
2019/10/26 PHP
php5.3/5.4/5.5/5.6/7常见新增特性汇总整理
2020/02/27 PHP
Extjs中DisplayField的日期或者数字格式化扩展
2010/09/03 Javascript
js自执行函数的几种不同写法的比较
2012/08/16 Javascript
JS获取各种宽度、高度的简单介绍
2014/12/19 Javascript
Javascript的表单验证-提交表单
2016/03/18 Javascript
jQuery给div,Span, a ,button, radio 赋值与取值
2016/06/24 Javascript
vue.js开发环境搭建教程
2017/05/04 Javascript
javascript 跨域问题以及解决办法
2017/07/17 Javascript
vue 使用Jade模板写html,stylus写css的方法
2018/02/23 Javascript
深入解析vue 源码目录及构建过程分析
2019/04/24 Javascript
微信小程序实现同时上传多张图片
2020/02/03 Javascript
Openlayers3实现车辆轨迹回放功能
2020/09/29 Javascript
如何在JavaScript中正确处理变量
2020/12/25 Javascript
[02:35]DOTA2超级联赛专访XB 难忘一年九冠称王
2013/06/20 DOTA
python使用新浪微博api上传图片到微博示例
2014/01/10 Python
Python自定义函数的创建、调用和函数的参数详解
2014/03/11 Python
python网络编程实例简析
2014/09/26 Python
python比较两个列表大小的方法
2015/07/11 Python
Python实现求数列和的方法示例
2018/01/12 Python
selenium+python实现自动化登录的方法
2018/09/04 Python
Django实现基于类的分页功能
2019/10/31 Python
如何理解python面向对象编程
2020/06/01 Python
Django中ORM的基本使用教程
2020/12/22 Python
lululemon美国官网:瑜伽服+跑步装备
2018/11/16 全球购物
观看《永远的雷锋》心得体会
2014/03/12 职场文书
职务说明书范文
2014/05/07 职场文书
暑期社会实践先进个人主要事迹
2014/05/22 职场文书
社区活动策划方案
2014/08/21 职场文书
解决sql server 数据库,sa用户被锁定的问题
2021/06/11 SQL Server
javascript Number 与 Math对象的介绍
2021/11/17 Javascript
Python实现抖音热搜定时爬取功能
2022/03/16 Python