首页 > 解决方案 > 如何将 txt 作为字典打开?

问题描述

我有以下txt...(我已保存为字典)

"{'03/01/20': ['luiana','macarena']}\n"
"{'03/01/21': ['juana','roberta','mariana']}\n"
"{'03/01/24': ['pedro','jose','mario','luis']}\n"
"{'03/01/24': ['pedro','jose','mario','luis']}\n"
"{'03/01/22': ['emanuel']}\n"

问题是我想将它作为字典打开,但我不知道该怎么做。我试过:

f = open ('usuarios.txt','r')
lines=f.readlines()
whip=eval(str(lines))

但它不起作用......我的想法是例如只取第二天 03/01/24 的字典作为值

标签: pythondictionary

解决方案


如果您只想拥有一个包含所有已保存字典的字典,您可以使用:

import ast

my_dict = {}
with open('your_file.txt', 'r') as fp:
    for line in fp.readlines():
        new_dict = ast.literal_eval(line)
        for key, value in new_dict.items():
            if key in my_dict:
                my_dict[key].extend(value)
            else:
                my_dict[key] = value

print(my_dict)

输出:

{'03/01/20': ['luiana', 'macarena'], '03/01/21': ['juana', 'roberta', 'mariana'], '03/01/24': ['pedro', 'jose', 'mario', 'luis', 'pedro', 'jose', 'mario', 'luis'], '03/01/22': ['emanuel']}

推荐阅读