Python ValueError:格式说明符之后的预期':'

rre*_*hel 2 python

我在python中使用dict试图用字典中的任何内容替换字符串中的单词.但是,当我尝试运行我的代码时,它会在格式说明符后输出错误"ValueError:expected':'." 我不知道这个错误可能来自哪里.有更多pythonic智慧的人对我有什么建议吗?谢谢!

这是我的代码示例:

str = """{fruit}"""
dict = {"fruit":"pears"}
str.replace(**dict)
Run Code Online (Sandbox Code Playgroud)

这应该使str包含"梨".

UPDATE

我有意使用三重引用的字符串 - 在我的代码中我试图用多行字符串替换,而且,我的代码已经在使用.format方法了.我只是决定在我的代码之间将它翻译到这里时混合使用.这是我的示例代码的更新版本,无法正常工作.

my_dict = """{fruit}"""
dict = {"fruit":"pears"}
string.format(**my_dict)
Run Code Online (Sandbox Code Playgroud)

最终更新

感谢下面收到的所有答案.我没有很好地解释我的问题,并决定简化它,简化了我的问题.我正在做一些元编程,所以我试图在C函数定义中替换,而python试图使用"{"作为格式标识符.我需要使用"{{"来让python将括号识别为char而不是某些开头的格式标识符.

gtl*_*ert 7

您想要使用该format()函数而不是replace():

string = "{fruit}"
my_dict = {"fruit": "pears"}
print(string.format(**my_dict))
Run Code Online (Sandbox Code Playgroud)

产量

pears
Run Code Online (Sandbox Code Playgroud)

还有其他一些事情:你不应该使用Python关键字strdict变量名.为清楚起见,我更改了变量名称.

此外,您使用带有三引号的多行字符串没有特别的原因,所以我也改变了.