如何在Python中使用字符串格式化时处理大括号?

13 浏览
0 Comments

如何在Python中使用字符串格式化时处理大括号?

此问题已经有答案了

如何在使用.format(或f-string)时转义大括号({})字符?

我有一个字符串,我想要花括号,但也想利用f-string功能。 是否有某种语法适用于此?

以下是两种不起作用的方式。 我要包括文本 {bar} 作为字符串的一部分。

foo = "test"
fstring = f"{foo} {bar}"

NameError:名称“bar”未定义

fstring = f"{foo} \{bar\}"

SyntaxError:f字符串表达式部分不能包括反斜杠

期望结果:

'test {bar}'

编辑:看起来这个问题与如何在Python字符串中打印文字大括号并对其使用.format?有相同的答案,但只有您知道str.format使用与f-string相同的规则,才能知道这一点。 因此,希望此问题对于希望了解f-string的搜索者能有所帮助。

admin 更改状态以发布 2023年5月21日
0
0 Comments

虽然解析器出现了自定义语法错误,但使用与常规字符串调用.format相同的技巧请使用双括号

具体内容可以查看这里,并在这里这里的文档中有所提及。

>>> foo = 'test'
>>> f'{foo} {{bar}}'
'test {bar}'

0