Python 3.x 使用Dict自动填充python模板

Python 3.x 使用Dict自动填充python模板,python-3.x,dictionary,templates,Python 3.x,Dictionary,Templates,我想使用python中的字典自动填充模板 这是一个MWE temp = """ {name} """ mydict = {"name":"pythonic"} print(temp.format(**mydict)) 然而,我真正的模板里面有花括号。这是一个不起作用的例子,但反映了我的实际问题 temp = """ { {name} } ""&q

我想使用python中的字典自动填充模板

这是一个MWE

temp = """
{name}
"""
mydict = {"name":"pythonic"}
print(temp.format(**mydict))
然而,我真正的模板里面有花括号。这是一个不起作用的例子,但反映了我的实际问题

temp = """
{
{name}
}
"""
mydict = {"name":"pythonic"}
print(temp.format(**mydict))
我得到的错误是预期的。。。但是,我不知道解决方案:

Traceback (most recent call last):
  File "test.py", line 8, in <module>
    print(temp.format(**mydict))
ValueError: unexpected '{' in field name

我想一个解决办法是在我的字典中添加“{”和“}”作为键,并将它们粘贴到字典中,但是,这似乎很愚蠢。特别是因为我的实际模板还有几次使用大括号。

使用双大括号来转义它们:

temp=”“”
{{
{name}
}}
"""
mydict={“名称”:“pythonic”}
打印(临时格式(**mydict))
这将提供您想要的输出。你可以在一本书中找到这个

{
pythonic
}