国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python統(tǒng)計一個文本中重復(fù)行數(shù)的方法

2020-02-23 06:12:45
字體:
供稿:網(wǎng)友

本文實例講述了python統(tǒng)計一個文本中重復(fù)行數(shù)的方法。分享給大家供大家參考。具體實現(xiàn)方法如下:

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

解決問題的思路:

出現(xiàn)的文本作為key, 出現(xiàn)的數(shù)目作為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的內(nèi)建函數(shù)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程序設(shè)計有所幫助。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 高陵县| 嘉兴市| 闽清县| 贡觉县| 炎陵县| 灵丘县| 大田县| 肇源县| 宝应县| 北安市| 泸州市| 南阳市| 德州市| 肇东市| 陕西省| 瑞丽市| 东平县| 青龙| 万宁市| 保亭| 卢湾区| 大同市| 锡林浩特市| 巴林左旗| 临澧县| 赤水市| 昭苏县| 东辽县| 河间市| 安国市| 临漳县| 新建县| 将乐县| 隆德县| 开江县| 阿拉善盟| 惠来县| 沈阳市| 孟村| 左贡县| 万盛区|