我将字典值写入了一个文本文件。现在,我想读取相同的文本文件以将内容提取为带有键和值的字典。

文本文件内容采用这种格式

   '5945-01-311-3597': {'NSN': '5945-01-311-3597', 'Nomenclature': 'ARMATURE, ELECTROMAG', 'RFQ_Date': '2-13-2019', 'RFQ_QTY': ' 25', 'Time': '2019-08-14 20:17:56', 'Add_method': 'Dibbs Extract'}, '3110-00-365-4766': {'NSN': '3110-00-365-4766', 'Nomenclature': 'BEARING, BALL, ANNULA', 'RFQ_Date': '2-13-2019', 'RFQ_QTY': ' 29', 'Time': '2019-08-14 20:17:56', 'Add_method': 'Dibbs Extract'}, '3120-01-584-4379': {'NSN': '3120-01-584-4379', 'Nomenclature': 'BEARING, WASHER, THRU', 'RFQ_Date': '2-13-2019', 'RFQ_QTY': ' 1', 'Time': '2019-08-14 20:17:56', 'Add_method': 'Dibbs Extract'},


所以一对键值对看起来像这样

  '5945-01-311-3597': {'NSN': '5945-01-311-3597', 'Nomenclature': 'ARMATURE, ELECTROMAG', 'RFQ_Date': '2-13-2019', 'RFQ_QTY': ' 25', 'Time': '2019-08-14 20:17:56', 'Add_method': 'Dibbs Extract'}


其中5945-01-311-3597是关键,而brack中的其他所有内容都是值。

 RFQ_file=open("RFQs/8-14-2019-rfq.txt", "r")

 RFQ_file_content =RFQ_file.read()

 rfqDict = RFQ_file_content.split('},')


上面的代码产生此输出

'5945-01-311-3597':{'NSN':'5945-01-311-3597','命名':'ARMATURE,ELECTROMAG','RFQ_Date':'2-13-2019','RFQ_QTY' :'25','Time':'2019-08-14 20:17:56','Add_method':'Dibbs Extract'

将上面的文本文件内容转换为字典的最佳方法是什么,以便我可以获取特定键的值?

最佳答案

您可以使用json包将string转换为dict

例如,

import json

with open(PATH_TO_YOUR_DATA, 'r') as f:
    data = json.load(f)


然后,您可以从字典data中获取所需的值。

关于python - 如何将文本文件内容转换为字典,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57642975/

10-13 06:06