在Python中解析单个qouted字典键和值

问题描述 投票:0回答:2

我有Python字典

original_dict={'body': '{"infra":["dev4","elk"],{"type":"file_integrity"}'}

我希望能够将original_dict键和值解析为普通词典,但我现在无法执行此操作,因为'body'键的字典已转换为字符串,因此我无法引用其中的任何键。所以我应该可以说:

infra=original_dict['body]['infra']

有人可以帮我这个忙吗?

python json python-3.x dictionary string-parsing
2个回答
0
投票

首先,您在original_dict中缺少花括号。这是将字符串转换为字典的示例。

    import json
    original_dict={'body':'{"infra":["dev4","elk"],"type":"file_integrity"}'}
    original_dict['body'] = json.loads(original_dict['body'])
    infra=original_dict['body']['infra']
    print(infra)

输出:['dev4','elk']


0
投票

您也可以使用ast:)

import ast 
original_dict = {'body': '{"infra":["dev4","elk"],"type":"file_integrity"}'}
original_dict['body'] = ast.literal_eval(original_dict['body'])
© www.soinside.com 2019 - 2024. All rights reserved.