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使用百度API上传文件到百度网盘代码分享
Nov 08 Python
在Python程序员面试中被问的最多的10道题
Dec 05 Python
python批量修改文件编码格式的方法
May 31 Python
详解Python中的正则表达式
Jul 08 Python
django的ORM操作 增加和查询
Jul 26 Python
简单了解python协程的相关知识
Aug 31 Python
python tkinter图形界面代码统计工具(更新)
Sep 18 Python
python字典和json.dumps()的遇到的坑分析
Mar 11 Python
基于python计算并显示日间、星期客流高峰
May 07 Python
Django集成MongoDB实现过程解析
Dec 01 Python
Python tkinter之Bind(绑定事件)的使用示例
Feb 05 Python
Python中的程序流程控制语句
Feb 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
ThinkPHP自动转义存储富文本编辑器内容导致读取出错的解决方法
2014/08/08 PHP
详解PHP错误日志的获取方法
2015/07/20 PHP
php获取POST数据的三种方法实例详解
2016/12/20 PHP
关于PHP通用返回值设置方法
2017/03/31 PHP
php5与php7的区别点总结
2019/10/11 PHP
JavaScript 闭包在封装函数时的简单分析
2009/11/28 Javascript
fancybox1.3.1 基于Jquery的插件在IE中图片显示问题
2010/10/01 Javascript
解读JavaScript代码 var ie = !-[1,] 最短的IE判定代码
2011/05/28 Javascript
jquery模拟按下回车实现代码
2011/09/20 Javascript
event对象获取方法总结在google浏览器下测试
2013/11/03 Javascript
jquery插件jquery倒计时插件分享
2013/12/27 Javascript
JS实现用户注册时获取短信验证码和倒计时功能
2016/10/27 Javascript
bootstrap如何让dropdown menu按钮式下拉框长度一致
2017/04/10 Javascript
vue移动端微信授权登录插件封装的实例
2018/08/28 Javascript
node.js使用net模块创建服务器和客户端示例【基于TCP协议】
2020/02/14 Javascript
vue实现简单跑马灯效果
2020/05/25 Javascript
vue实现移动端返回顶部
2020/10/12 Javascript
Python写的服务监控程序实例
2015/01/31 Python
Python3通过Luhn算法快速验证信用卡卡号的方法
2015/05/14 Python
Python作用域用法实例详解
2016/03/15 Python
玩转python selenium鼠标键盘操作(ActionChains)
2020/04/12 Python
详解python之配置日志的几种方式
2017/05/22 Python
Python单体模式的几种常见实现方法详解
2017/07/28 Python
tensorflow构建BP神经网络的方法
2018/03/12 Python
Python实现的对本地host127.0.0.1主机进行扫描端口功能示例
2019/02/15 Python
python实现扑克牌交互式界面发牌程序
2020/04/22 Python
详解Python中第三方库Faker
2020/09/25 Python
你的自行车健身专家:FaFit24
2016/11/16 全球购物
性能服装:HYLETE
2018/08/14 全球购物
德国BA保镖药房中文网:Bodyguard Apotheke
2021/03/09 全球购物
少儿节目主持串词
2014/04/02 职场文书
我的大学生活演讲稿
2014/04/25 职场文书
高中班级口号
2014/06/09 职场文书
如何在centos上使用yum安装rabbitmq-server
2021/03/31 Servers
python数字转对应中文的方法总结
2021/08/02 Python
Windows server 2012 配置Telnet以及用法详解
2022/04/28 Servers