如何在 Python 3 中向 f 字符串添加大括号?

Vid*_*tam 8 python python-3.x f-string

我有这个代码

class = "maximum"
s = f"""The code for {class} is {3854-st56}"""
print(s)
Run Code Online (Sandbox Code Playgroud)

我想要这个输出:

>> The code for maximum is {3854-st56}
Run Code Online (Sandbox Code Playgroud)

但 f 字符串无法识别 3854-st56 周围的大括号,而是认为我正在尝试输入实际的 Python 代码。如何使 f 字符串识别大括号是字符串文字。

小智 10

要转义大括号,请复制它们:

>>> x="abc"
>>> f"{x} {{x}}"
'abc {x}'
Run Code Online (Sandbox Code Playgroud)

您还可以查看 PEP 以获取更多信息:https://www.python.org/dev/peps/pep-0498/#escape-sequences


Pyg*_*irl 6

如果要分配变量值,则需要使用curly bracket两次;如果要添加值,则需要使用一次:

Class = "maximum"
s = f"""The code for {{{Class}}} is {{'3854-st56'}}"""
print(s)
Run Code Online (Sandbox Code Playgroud)
The code for {maximum} is {3854-st56}
Run Code Online (Sandbox Code Playgroud)