当前位置:  开发笔记 > 编程语言 > 正文

如何在python中优化word_count

如何解决《如何在python中优化word_count》经验,为你挑选了1个好方法。

我给了n个单词(1≤n≤10^ 5).有些词可能重复.对于每个单词,我必须输出它出现的次数.但输出顺序应与单词首次出现的顺序一致.

我有一个问题的工作程序,但对于大输入我正在超时.这是我解决问题的方法:

n=int(input())
l=[]
ll=[]

for x in range(n):
    l.append(raw_input())
    if l[x] not in ll:
        ll.append(l[x])

result = [ l.count(ll[x]) for x in range(len(ll)) ]

for x in range(len(result)):
    print result[x],

jme.. 5

由子类使用一个有序计数器OrderedDictCounter:

from collections import Counter, OrderedDict

class OrderedCounter(Counter, OrderedDict):
    pass

counts = OrderedCounter(['b', 'c', 'b', 'b', 'a', 'c'])
for k, c in counts.items():
    print(k, c)

哪个印刷品:

b 3
c 2
a 1

查看文档的collections模块更完整的配方,其中包括一__repr__OrderedCounter.



1> jme..:

由子类使用一个有序计数器OrderedDictCounter:

from collections import Counter, OrderedDict

class OrderedCounter(Counter, OrderedDict):
    pass

counts = OrderedCounter(['b', 'c', 'b', 'b', 'a', 'c'])
for k, c in counts.items():
    print(k, c)

哪个印刷品:

b 3
c 2
a 1

查看文档的collections模块更完整的配方,其中包括一__repr__OrderedCounter.

推荐阅读
依然-狠幸福
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有