我运行以下代码来计算一个单词在文本文件中出现的次数。你知道吗
def print_words(filename):
f = open(filename, 'rU')
dict={}
for line in f:
words=line.split()
for word in words:
if dict.get(word):
dict[word]=dict[word]+1
else:
dict[word]=1
ke = sorted(dict.keys())
for k, v in ke: print k, v
字典文件应该包含每个单词及其计数。我能让它正常工作。但我没能整理出
其他答案也指出了问题所在。如果您使用的是python2.7+,那么这里有一种更简单的方法,即使用} 类。你知道吗
collections
模块中的^{sorted(dict.keys())
只返回键的排序列表。for循环错误地期望在同一列表中找到值。请尝试以下代码:而不是
尝试:
sorted(dict.keys())
将返回一个仅包含键的排序列表(因为这就是您所给出的全部内容)。你知道吗相关问题 更多 >
编程相关推荐