gpt4 book ai didi

Python 值错误 : expected ':' after format specifier

转载 作者:行者123 更新时间:2023-11-28 20:04:50 25 4
gpt4 key购买 nike

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

这是我的代码示例:

str = """{fruit}"""
dict = {"fruit":"pears"}
str.replace(**dict)

这应该使 str 包含“pears”。

更新

我故意使用三重引号引起来的字符串 - 在我的代码中,我试图用多行字符串进行替换,另外,我的代码已经在使用 .format 方法。我只是决定在我的代码之间将其翻译到此处时混合使用这些词。这是我的示例代码的更新版本,它不起作用。

my_dict = """{fruit}"""
dict = {"fruit":"pears"}
string.format(**my_dict)

最终更新

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

最佳答案

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

string = "{fruit}"
my_dict = {"fruit": "pears"}
print(string.format(**my_dict))

输出

pears

其他几件事:您不应该使用 Python 关键字 strdict 作为变量名。为了清楚起见,我已经更改了您的变量名称。

此外,您无缘无故地使用了带三引号的多行字符串,所以我也进行了更改。

关于Python 值错误 : expected ':' after format specifier,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35088291/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com