根据文本文件创建字典

例如,假设我们有一个名为letter的.txt文件,其中包含,

a
b
b
c
d
d
d
d

我该如何创建一个字典,其中的键是文件中找到的单个字母,而值是每个字母出现的次数?例如,a将是一个键,对应的值为1,而b也是一个键,其值为2。

我们刚开始学习打开文件并创建字典,所以我假设我将从类似的内容开始,

file = open('letters.txt', 'rt') 

我不太确定rt部分是否正确,但是随后我们将不得不搜索“文件”,

for letter in file:

但是我不太确定如何搜索字母,使其成为键,然后将字母出现的次数添加到字典中的值。有什么建议吗?

冠军

Pythondictcollections名为模块中有一个方便的扩展Counter,可以完全满足您的需求:

>>> from collections import Counter
>>> with open('letters.txt') as f:
...     c = Counter(map(str.strip, f))
>>> c
Counter({'a': 1, 'b': 2, 'c': 1, 'd': 4})

如果您真的希望将其作为dict

>>> dict(c)
{'a': 1, 'b': 2, 'c': 1, 'd': 4}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章