【发布时间】:2014-08-11 07:01:48
【问题描述】:
我这里有一个程序,它可以计算一个单词在我的 .txt 文件中使用的次数,并显示前 10 个最常用的单词。我希望在没有数字的情况下也显示这些信息,所以只是文字。任何帮助将不胜感激。
def countWordFrequency(Data1):
myDict = {}
fh = open(Data1, 'r')
content = fh.read()
listWords = content.split(" ")
for w in listWords:
if (myDict.has_key(w)):
myDict[w] = myDict[w] + 1
else:
myDict[w] = 1
fh.close()
return myDict
freq = countWordFrequency('Data1.txt')
topfreq = sorted(freq.iteritems(), key=lambda x:-x[1])[:10]
for x in topfreq:
print "{0}: {1}".format(*x)
【问题讨论】:
-
使用集合获取结果的最高值 (stackoverflow.com/questions/11902665/top-values-from-dictionary)。
-
太棒了,谢谢大家!
标签: python python-2.7 dictionary frequency word-count