例如,假设我们有一个名为letter的.txt文件,其中包含,
a
b
b
c
d
d
d
d
我该如何创建一个字典,其中的键是文件中找到的单个字母,而值是每个字母出现的次数?例如,a将是一个键,对应的值为1,而b也是一个键,其值为2。
我们刚开始学习打开文件并创建字典,所以我假设我将从类似的内容开始,
file = open('letters.txt', 'rt')
我不太确定rt部分是否正确,但是随后我们将不得不搜索“文件”,
for letter in file:
但是我不太确定如何搜索字母,使其成为键,然后将字母出现的次数添加到字典中的值。有什么建议吗?
Pythondict
在collections
名为的模块中有一个方便的扩展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] 删除。
我来说两句