python统计一个文本中重复行数的方法


Posted in Python onNovember 19, 2014

本文实例讲述了python统计一个文本中重复行数的方法。分享给大家供大家参考。具体实现方法如下:

比如有下面一个文件
2
3
1
2
我们期望得到
2,2
3,1
1,1

解决问题的思路:

出现的文本作为key, 出现的数目作为value,然后按照value排除后输出
最好按照value从大到小输出出来,可以参照:

in recent Python 2.7, we have new OrderedDict type, which remembers the order in which the items were added.

>>> d = {"third": 3, "first": 1, "fourth": 4, "second": 2}

>>> for k, v in d.items():

...     print "%s: %s" % (k, v)

...

second: 2

fourth: 4

third: 3

first: 1

>>> d

{'second': 2, 'fourth': 4, 'third': 3, 'first': 1}To make a new ordered dictionary from the original, sorting by the values:

>>> from collections import OrderedDict

>>> d_sorted_by_value = OrderedDict(sorted(d.items(), key=lambda x: x[1]))The OrderedDict behaves like a normal dict:

>>> for k, v in d_sorted_by_value.items():

...     print "%s: %s" % (k, v)

...

first: 1

second: 2

third: 3

fourth: 4

>>> d_sorted_by_value

OrderedDict([('first': 1), ('second': 2), ('third': 3), ('fourth': 4)])

代码如下:
#coding=utf-8

import operator

f = open("f.txt")

count_dict = {}

for line in f.readlines():

    line = line.strip()

    count = count_dict.setdefault(line, 0)

    count += 1

    count_dict[line] = count

sorted_count_dict = sorted(count_dict.iteritems(), key=operator.itemgetter(1), reverse=True)

for item in sorted_count_dict:

    print "%s,%d" % (item[0], item[1])

补充说明:
1. python的dict对象的两个方法:

items方法将所有的字典项以列表的方式返回, 这些列表项中每一项都来自于(键, 值)
iteritems方法与items的作用大致相同, 但是返回一个迭代器对象而不是列表

2. python的内建函数sorted

>>> help(sorted)

Help on built-in function sorted in module __builtin__:

sorted(...)

    sorted(iterable, cmp=None, key=None, reverse=False) --> new sorted list

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python中迭代器(iterator)用法实例分析
Apr 29 Python
浅谈Python中列表生成式和生成器的区别
Aug 03 Python
Python实现网络端口转发和重定向的方法
Sep 19 Python
TensorFlow 实战之实现卷积神经网络的实例讲解
Feb 26 Python
python控制windows剪贴板,向剪贴板中写入图片的实例
May 31 Python
pycharm debug功能实现跳到循环末尾的方法
Nov 29 Python
python设定并获取socket超时时间的方法
Jan 12 Python
Python numpy线性代数用法实例解析
Nov 15 Python
python selenium 执行完毕关闭chromedriver进程示例
Nov 15 Python
python实现贪吃蛇游戏源码
Mar 21 Python
在python中利用pycharm自定义代码块教程(三步搞定)
Apr 15 Python
keras .h5转移动端的.tflite文件实现方式
May 25 Python
python通过zlib实现压缩与解压字符串的方法
Nov 19 #Python
python判断字符串是否纯数字的方法
Nov 19 #Python
python使用any判断一个对象是否为空的方法
Nov 19 #Python
python编写暴力破解FTP密码小工具
Nov 19 #Python
用python读写excel的方法
Nov 18 #Python
kNN算法python实现和简单数字识别的方法
Nov 18 #Python
决策树的python实现方法
Nov 18 #Python
You might like
基于php设计模式中工厂模式详细介绍
2013/05/15 PHP
PHP限制HTML内容中图片必须是本站的方法
2015/06/16 PHP
ThinkPHP框架实现的邮箱激活功能示例
2018/06/15 PHP
PHP parse_ini_file函数的应用与扩展操作示例
2019/01/07 PHP
解决PHPstudy Apache无法启动的问题【亲测有效】
2020/10/30 PHP
PJ Blog修改-禁止复制的代码和方法
2006/10/25 Javascript
JS实现为表格动态添加标题的方法
2015/03/31 Javascript
jQuery 如何给Carousel插件添加新的功能
2016/04/18 Javascript
HTML5开发Kinect体感游戏的实例应用
2017/09/18 Javascript
Js利用prototype自定义数组方法示例
2017/10/20 Javascript
Vue实现按钮旋转和移动位置的实例代码
2018/08/09 Javascript
小程序实现上下移动切换位置
2019/09/23 Javascript
JS写滑稽笑脸运动效果
2020/05/28 Javascript
[03:26]回顾2015国际邀请赛中国区预选赛
2015/06/09 DOTA
python实现任意位置文件分割的实例
2018/12/14 Python
python爬取酷狗音乐排行榜
2019/02/20 Python
python+opencv边缘提取与各函数参数解析
2020/03/09 Python
Python如何实现线程间通信
2020/07/30 Python
python爬虫中url管理器去重操作实例
2020/11/30 Python
python爬虫scrapy基本使用超详细教程
2021/02/20 Python
Python页面加载的等待方式总结
2021/02/28 Python
中粮集团旗下食品网上购物网站:我买网
2016/09/22 全球购物
TripAdvisor斯洛伐克:阅读评论、比较价格和酒店预订
2018/04/25 全球购物
荷兰家电销售网站:Welhof
2020/12/08 全球购物
密封类可以有虚函数吗
2014/08/11 面试题
你在项目中用到了xml技术的哪些方面?如何实现的?
2014/01/26 面试题
金融专业个人求职信
2013/09/22 职场文书
医生自荐信
2013/10/11 职场文书
幼儿园托班开学寄语
2014/01/18 职场文书
项目经理任命书内容
2014/06/06 职场文书
大学毕业生推荐信
2014/07/09 职场文书
2014大学生职业生涯规划书最新范文
2014/09/13 职场文书
公司内部升职自荐信
2015/03/27 职场文书
工作报告范文
2019/06/20 职场文书
HTML中table表格拆分合并(colspan、rowspan)
2021/04/07 HTML / CSS
SQL Server中常用截取字符串函数介绍
2022/03/16 SQL Server