Python实现统计单词出现的个数


Posted in Python onMay 28, 2015

最近在看python脚本语言,脚本语言是一种解释性的语言,不需要编译,可以直接用,由解释器来负责解释。python语言很强大,而且写起来很简洁。下面的一个例子就是用python统计单词出现的个数。

import sys
import string
#import collections

if len(sys.argv) == 1 or sys.argv[1] in {"-h", "--help"}:
 print("usage: uniqueword filename_1 filename_2 ... filename_n")
 sys.exit()
else:
 words = {} 
 # words = collections.defaultdict(int)
 strip = string.whitespace + string.punctuation + string.digits + "\"'"
 for filename in sys.argv[1:]:
 for line in open(filename):
  for word in line.split():
  word = word.strip(strip)
  if len(word) >= 2:
   words[word] = words.get(word, 0) + 1
   # words[word] += 1
 for word in sorted(words):
 print("'{0}' occurs {1} times".format(word,words[word]))

假设文件名是 uniqueword.py,在命令行下输入: uniqueword.py filename_1 filename_2 ... filename_n中单词出现的次数可以被统计出来。
 
第四行和第五行判断是否有输入参数,如果输入参数为空或者为-h, -help,则输出帮助信息。

从第七行到第14行是核心部分,逐一打开参数中指定的文件,并读取每一行,再用字符串的split方法把读取的行抽取出一个一个的单词,但单词长度大于2的时候,把此单词加入到字典words中。 其中words.get(word, 0)的意思是取出key等于word的value,如果key为空,则把value置为默认值0. 最后打印出结果。

Python 相关文章推荐
python网络编程示例(客户端与服务端)
Apr 24 Python
使用py2exe在Windows下将Python程序转为exe文件
Mar 04 Python
Python实现的归并排序算法示例
Nov 21 Python
浅析python协程相关概念
Jan 20 Python
解决pycharm运行出错,代码正确结果不显示的问题
Nov 30 Python
几行Python代码爬取3000+上市公司的信息
Jan 24 Python
python使用wxpy实现微信消息防撤回脚本
Apr 29 Python
MNIST数据集转化为二维图片的实现示例
Jan 10 Python
Python实现敏感词过滤的4种方法
Sep 12 Python
Python字典实现伪切片功能
Oct 28 Python
Python实例教程之检索输出月份日历表
Dec 16 Python
python中四舍五入的正确打开方式
Jan 18 Python
Python下载懒人图库JavaScript特效
May 28 #Python
Python实现给qq邮箱发送邮件的方法
May 28 #Python
Python import用法以及与from...import的区别
May 28 #Python
Python中使用不同编码读写txt文件详解
May 28 #Python
Python实现统计英文单词个数及字符串分割代码
May 28 #Python
python处理大数字的方法
May 27 #Python
python类继承用法实例分析
May 27 #Python
You might like
解决ajax+php中文乱码的方法详解
2013/06/09 PHP
解析centos中Apache、php、mysql 默认安装路径
2013/06/25 PHP
discuz加密解密函数使用方法和中文注释
2014/01/21 PHP
php_screw安装使用教程(另一个PHP代码加密实现)
2014/05/29 PHP
php通过function_exists检测函数是否存在的方法
2015/03/18 PHP
学习PHP session的传递方式
2016/06/15 PHP
PHP中trait使用方法详细介绍
2017/05/21 PHP
TP5框架实现签到功能的方法分析
2020/04/05 PHP
PHP执行linux命令6个函数代码实例
2020/11/24 PHP
列表内容的选择
2006/06/30 Javascript
jquery 表单进行客户端验证demo
2009/08/24 Javascript
jQuery 关于伪类选择符的使用说明
2013/04/24 Javascript
jQuery中验证表单提交方式及序列化表单内容的实现
2014/01/06 Javascript
javascript函数作用域学习示例(js作用域)
2014/01/13 Javascript
jQuery中addClass()方法用法实例
2015/01/05 Javascript
nodejs使用express获取get和post传值及session验证的方法
2017/11/09 NodeJs
简单说说angular.json文件的使用
2018/10/29 Javascript
Vue.js中的extend绑定节点并显示的方法
2019/06/20 Javascript
Echarts实现单条折线可拖拽效果
2019/12/19 Javascript
Python中的匿名函数使用简介
2015/04/27 Python
批量将ppt转换为pdf的Python代码 只要27行!
2018/02/26 Python
Python基于递归算法实现的汉诺塔与Fibonacci数列示例
2018/04/18 Python
Django教程笔记之中间件middleware详解
2018/08/01 Python
使用python的turtle绘画滑稽脸实例
2019/11/21 Python
Python实现直播推流效果
2019/11/26 Python
Python换行与不换行的输出实例
2020/02/19 Python
python程序实现BTC(比特币)挖矿的完整代码
2021/01/20 Python
微信端html5页面调用分享接口示例
2018/03/14 HTML / CSS
HTML5单选框、复选框、下拉菜单、文本域的实现代码
2020/12/01 HTML / CSS
英国No.1体育用品零售商:SportsDirect.com
2019/10/16 全球购物
新加坡第一的杂货零售商:NTUC FairPrice
2020/12/05 全球购物
给护士表扬信
2014/01/19 职场文书
感谢信范文大全
2015/01/23 职场文书
2015年数学教师工作总结
2015/05/20 职场文书
公司保密管理制度
2015/08/04 职场文书
Spring事务管理下synchronized锁失效问题的解决方法
2022/03/31 Java/Android