Python 2.7 使用字典格式化JSON

Python 2.7 使用字典格式化JSON,python-2.7,Python 2.7,我有一个JSON,里面有格式变量,类似于字符串格式,我希望能够用实际值替换的变量加载它 例如,如果JSON是: [ { "role": "President", "name": "{first_name}", "age": "{first_age}" }, { "role": "Vice President", "name": "{second_name}", "age": "

我有一个JSON,里面有格式变量,类似于字符串格式,我希望能够用实际值替换的变量加载它

例如,如果JSON是:

[
    {
        "role": "President",
        "name": "{first_name}",
        "age": "{first_age}"
    },
    {
        "role": "Vice President",
        "name": "{second_name}",
        "age": "{second_age}"
    }
]
我想用的字典是:

{"first_name": "Bob", "first_age": "50", "second_name": "Bill", "second_age": "35"}
我想得到:

[
    {
        "role": "President",
        "name": "Bob",
        "age": "50"
    },
    {
        "role": "Vice President",
        "name": "Bill",
        "age": "35"
    }
]
我尝试使用格式将JSON转换为字符串,然后将其转换回字典列表:

from ast import literal_eval
literal_eval(str(raw_json).format(**json_params))
但是字典的花括号混淆了format函数,给了我一个KeyError异常。我想我可以用双花括号替换每一对没有变量名的花括号,但这肯定会出错,而且也不是很像Python


解决这个问题最优雅的方法是什么?

您需要的是一个模板引擎。 模板是json字符串,必须将数据注入此模板。 使用python实现这一点的正确工具是