在构建python字典时出现键/值问题

时间:2017-04-22 18:02:51

标签: python dictionary hashmap

我试图通过构建一个字典来计算文件'xxxx'中的单词,其中键是单词,值是出现次数。到目前为止我得到了这个:

fil = open("xxxx","r")
X = fil.read()

count = {}
for key in X.split():
  count[key] += 1

for i in count:
  print (i, count[i])

当我跑步时,我得到:

Traceback (most recent call last):
  File "countword.py", line 9, in <module>
    count[key] = count[key] + 1
KeyError: 'From'

'From'是文件中的第一个单词,因为到目前为止没有关键字'From',我相信是导致错误的原因。但是这样做的正确方法是什么?在进入for循环之前,我还需要以某种方式初始化值吗?

1 个答案:

答案 0 :(得分:1)

使用Counter

from collections import Counter

X = "From A to B"

count = Counter()
for key in X.split():
    count[key] += 1

count
# Counter({'A': 1, 'B': 1, 'From': 1, 'to': 1})