当以某种方式格式化字典时,如何从文本文件中读回数据? [蟒蛇]

时间:2017-10-17 16:32:59

标签: python dictionary

嗨,这是我目前的文本文件格式;

A:{'1': [6, 4, 3, 8, 5], '2': [2, 1, 5, 4, 4], '3': []}
B:{'1': [3, 6, 4, 3, 7], '2': [3, 2, 9, 2, 7], '3': []}
C:{'1': [5, 4, 3, 6, 1], '2': [], '3': []}

如何调用字典的键并使其以文本文件格式化方式打印数据。

2 个答案:

答案 0 :(得分:1)

你可以拨打钥匙。例如: A['1'] 哪个会给你 [6, 4, 3, 8, 5]

答案 1 :(得分:0)

>>> import ast
# Read the file contents into a variable
>>> file_content='''A:{'1': [6, 4, 3, 8, 5], '2': [2, 1, 5, 4, 4], '3': []}
B:{'1': [3, 6, 4, 3, 7], '2': [3, 2, 9, 2, 7], '3': []}
C:{'1': [5, 4, 3, 6, 1], '2': [], '3': []}'''
>>> result_dict = {}
>>> for line in file_content.split('\n'):
       key_index = line.index(':')
       result_dict[line[:key_index]] = ast.literal_eval(line[key_index+1:])


>>> result_dict
{'A': {'1': [6, 4, 3, 8, 5], '3': [], '2': [2, 1, 5, 4, 4]}, 'C': {'1': [5, 4, 3, 6, 1], '3': [], '2': []}, 'B': {'1': [3, 6, 4, 3, 7], '3': [], '2': [3, 2, 9, 2, 7]}}
>>> result_dict['A']
{'1': [6, 4, 3, 8, 5], '3': [], '2': [2, 1, 5, 4, 4]}