在f-string中转义字符

4

我在使用f-string时遇到了以下问题:

>>> a='hello'

# how to print '{hello}' ?

>>> f'{{a}}'
'{a}'

>>> f'\{{a}\}'
  File "<stdin>", line 1
SyntaxError: f-string: single '}' is not allowed

# doing it without f-strings
>>> '{' + a + '}'
'{hello}'

如何在 fstring 中转义字符?


双括号在输出时会变成单个括号,而您也想要正常的括号操作,因此请尝试三重括号 - f'{{{a}}}' - jasonharper
1个回答

10

您需要使用三重大括号:

f'{{{a}}}'

两个外部的 {} 被「转义」并且被解析成 {...},然后内部的 {} 用于格式化(至少这是我的理解)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接