Python 将文本文件转换为字典
我有一个具有以下结构的文本文件:Python 将文本文件转换为字典,python,dictionary,Python,Dictionary,我有一个具有以下结构的文本文件: mom:2 dad:3 mom:4 dad:2 me:4 我需要制作一个字典,每个名字只显示一次,但要把数值加在一起。在这种情况下,它将如下所示: {dad':5, 'me':4, 'mom':6} 我应该如何处理这个问题? 我试过了 d = {} try: file = open(file.txt, "r") for line in file: (a, b) = line.split(":") d[a] = fl
mom:2
dad:3
mom:4
dad:2
me:4
我需要制作一个字典,每个名字只显示一次,但要把数值加在一起。在这种情况下,它将如下所示:
{dad':5, 'me':4, 'mom':6}
我应该如何处理这个问题?
我试过了
d = {}
try:
file = open(file.txt, "r")
for line in file:
(a, b) = line.split(":")
d[a] = float(b)
except IOError:
print()
但是我还没有找到一种计算数值的方法。这是家庭作业吗?到目前为止你尝试了什么?我知道你想要实现什么,但是字典似乎不是你想要在这里使用的数据结构,作为一个字典没有一个命令。考虑到A你知道使用类似的键会覆盖值。@马利克拉希米是的,这就是为什么我希望找出是否有可能的另一种方式来做到这一点。
with open('file.txt', 'r') as f:
fp = f.readlines()
t = [l.strip().split(':') for l in fp if l != '\n']
d = {}
for l in t:
d[l[0]] = d.setdefault(l[0], 0) + int(l[1])