当我尝试运行以下代码时
a= """{"hi":"hello "} {user}"""
a.format({"user":"xxx"})
我收到此错误:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
KeyError: '"hi"'
请让我知道如何解决这个问题,我已经尝试了很长时间。
答案 0 :(得分:1)
您需要转义{
和}
,然后您需要将关键字参数传递给format
,而不是dict
a= """{{"hi":"hello "}} {user}"""
print a.format(**{"user":"xxx"})
print a.format(user="xxx")
输出
{"hi":"hello "} xxx
{"hi":"hello "} xxx
或者,如果您尝试获取字符串表示形式:
a= """{{"hi":"hello "}} {user}"""
print a.format(user=str({"user":"xxx"}))
输出
{"hi":"hello "} {'user': 'xxx'}