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

Parse single qouted dictionary key and value in Python

我有一本 Python 字典

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

我希望能够将 original_dict 键和值解析为普通字典,但我现在不能这样做,因为 'body' 键有一个转换为字符串的字典,因此我不能参考它的任何键。所以我应该可以说:

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

谁能帮我解决这个问题。

首先,您在 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']

您可以使用 ast 来:)

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