我正在尝试写一个程序来创建一个2 2gb (大约)大小的英文单词文件。并从这个2 2gb的文件中尝试使用外部排序打印单词的频率。外部排序后,它可以只打印计数(频率)
发布于 2011-08-01 17:32:36
Python有一个内置的函数sorted,它对迭代数进行排序。但比这更好的是,在2.7版和更高版本中,它有一个内置的集合来计算事物的频率。假设您的大文件每行只有一个单词,您可以这样做:
from collections import Counter
with open(<giant-dictionary>) as words:
counts = Counter(words)这需要几分钟的时间。
https://stackoverflow.com/questions/6896349
复制相似问题