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自动格式化json文件的方法
Mar 11 Python
基于Python Shell获取hostname和fqdn释疑
Jan 25 Python
对Python中range()函数和list的比较
Apr 19 Python
解决Python一行输出不显示的问题
Dec 03 Python
Python生成指定数量的优惠码实操内容
Jun 18 Python
解决Django加载静态资源失败的问题
Jul 28 Python
PYQT5开启多个线程和窗口,多线程与多窗口的交互实例
Dec 13 Python
django 前端页面如何实现显示前N条数据
Mar 16 Python
Python 找出出现次数超过数组长度一半的元素实例
May 11 Python
python如何实现读取并显示图片(不需要图形界面)
Jul 08 Python
python gui开发——制作抖音无水印视频下载工具(附源码)
Feb 07 Python
python线程优先级队列知识点总结
Feb 28 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常用函数(php下操作数据库必备)
2010/09/12 PHP
全面解读PHP的人气开发框架Laravel
2015/10/15 PHP
jQuery+php简单实现全选删除的方法
2016/11/28 PHP
动态表单验证的操作方法和TP框架里面的ajax表单验证
2017/07/19 PHP
YII2.0框架行为(Behavior)深入详解
2019/07/26 PHP
ASP.NET jQuery 实例1(在TextBox里面创建一个默认提示)
2012/01/13 Javascript
使用UglifyJS合并/压缩JavaScript的方法
2012/03/07 Javascript
window.location.href的用法(动态输出跳转)
2014/08/09 Javascript
Javascript编程之继承实例汇总
2015/11/28 Javascript
原生js页面滚动延迟加载图片
2015/12/20 Javascript
JavaScript实现复制或剪切内容到剪贴板功能的方法
2016/05/23 Javascript
使用开源工具制作网页验证码的方法
2016/10/17 Javascript
Bootstrap实现基于carousel.js框架的轮播图效果
2017/05/02 Javascript
深入理解React中何时使用箭头函数
2017/08/23 Javascript
通过vue刷新左侧菜单栏操作
2020/08/06 Javascript
vue打开其他项目页面并传入数据详解
2020/11/25 Vue.js
微信小程序实现天气预报功能(附源码)
2020/12/10 Javascript
[00:17]游戏风云独家报道:DD赛后说出数字秘密 吓死你们啊!
2014/07/13 DOTA
python pdb调试方法分享
2014/01/21 Python
简单谈谈Python中的json与pickle
2017/07/19 Python
基于python list对象中嵌套元组使用sort时的排序方法
2018/04/18 Python
Python3按一定数据位数格式处理bin文件的方法
2019/01/24 Python
python利用百度云接口实现车牌识别的示例
2020/02/21 Python
Python-jenkins 获取job构建信息方式
2020/05/12 Python
Python pickle模块常用方法代码实例
2020/10/10 Python
css3进行截取替代js的substring
2013/09/02 HTML / CSS
Daisy London官网:英国最大的首饰集团IBB旗下
2019/02/28 全球购物
adidas瑞典官方网站:购买阿迪达斯鞋子和运动服
2019/12/11 全球购物
营销团队口号
2014/06/06 职场文书
单位委托书怎么写
2014/08/02 职场文书
2014年幼儿园教研工作总结
2014/12/04 职场文书
资料员岗位职责范本
2015/04/13 职场文书
最美乡村教师观后感
2015/06/11 职场文书
班级联欢会主持词
2015/07/03 职场文书
2016国庆节67周年红领巾广播稿
2015/12/18 职场文书
Redis实现订单过期删除的方法步骤
2022/06/05 Redis