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使用装饰器和线程限制函数执行时间的方法
Apr 18 Python
python中lambda与def用法对比实例分析
Apr 30 Python
Tesserocr库的正确安装方式
Oct 19 Python
python中的tcp示例详解
Dec 09 Python
pandas去除重复列的实现方法
Jan 29 Python
django和vue实现数据交互的方法
Aug 21 Python
PyCharm汉化安装及永久激活详细教程(靠谱)
Jan 16 Python
Python搭建Keras CNN模型破解网站验证码的实现
Apr 07 Python
Python decimal模块使用方法详解
Jun 08 Python
python3 os进行嵌套操作的实例讲解
Nov 19 Python
pytorch 计算Parameter和FLOP的操作
Mar 04 Python
只需要100行Python代码就可以实现的贪吃蛇小游戏
May 27 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开发过程中关于继承的使用方法分享
2011/06/17 PHP
php实现的一个很好用HTML解析器类可用于采集数据
2013/09/23 PHP
PHP数组与对象之间使用递归实现转换的方法
2015/06/24 PHP
laravel实现分页样式替换示例代码(增加首、尾页)
2017/09/22 PHP
从零开始学习jQuery (二) 万能的选择器
2010/10/01 Javascript
本地对象Array的原型扩展实现代码
2010/12/04 Javascript
分享20多个很棒的jQuery 文件上传插件或教程
2011/09/04 Javascript
jquery DIV撑大让滚动条滚到最底部代码
2013/06/06 Javascript
引入JS文件IE6报语法错误或缺少对象问题的解决方法
2014/01/09 Javascript
JavaScript实现自动变换表格边框颜色
2015/05/08 Javascript
javascript中使用正则表达式清理table样式的代码
2020/04/01 Javascript
浅析C/C++,Java,PHP,JavaScript,Json数组、对象赋值时最后一个元素后面是否可以带逗号
2016/03/22 Javascript
javascript实现抽奖程序的简单实例
2016/06/07 Javascript
详解Vue-cli 创建的项目如何跨域请求
2017/05/18 Javascript
js实现1,2,3,5数字按照概率生成
2017/09/12 Javascript
浅谈React的最大亮点之虚拟DOM
2018/05/29 Javascript
学习React中ref的两个demo示例
2018/08/14 Javascript
Angular2中监听数据更新的方法
2018/08/31 Javascript
js使用文件流下载csv文件的实现方法
2019/07/15 Javascript
解决node.js含有%百分号时发送get请求时浏览器地址自动编码的问题
2019/11/20 Javascript
Postman内建变量常用方法实例解析
2020/07/28 Javascript
[01:21:58]守擂赛DOTA2第一周决赛
2020/04/22 DOTA
Python中enumerate()函数编写更Pythonic的循环
2018/03/06 Python
使用wxpy实现自动发送微信消息功能
2020/02/28 Python
基于HTML5 Canvas:字符串,路径,背景,图片的详解
2013/05/09 HTML / CSS
舒适的豪华鞋:Taryn Rose
2018/05/03 全球购物
医药工作者的求职信范文
2013/09/21 职场文书
优秀少先队辅导员先进事迹材料
2014/05/18 职场文书
保护地球的标语
2014/06/17 职场文书
老兵退伍标语
2014/10/07 职场文书
地方课程教学计划
2015/01/19 职场文书
小学生节水倡议书
2015/04/29 职场文书
小学安全工作总结2015
2015/05/18 职场文书
公司老总年会致辞
2015/07/30 职场文书
学校就业保障协议书
2019/06/24 职场文书
关于Numpy之repeat、tile的用法总结
2021/06/02 Python