首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在打印字符串中的文字大括号字符的同时对其使用.format?

如何在打印字符串中的文字大括号字符的同时对其使用.format?
EN

Stack Overflow用户
提问于 2011-03-29 08:04:53
回答 24查看 667.5K关注 0票数 2K
代码语言:javascript
复制
x = " \{ Hello \} {0} "
print(x.format(42))

给我:Key Error: Hello\\

我想打印输出:{Hello} 42

EN

回答 24

Stack Overflow用户

回答已采纳

发布于 2011-03-29 08:08:56

您需要将{{}}增加一倍

代码语言:javascript
复制
>>> x = " {{ Hello }} {0} "
>>> print(x.format(42))
' { Hello } 42 '

下面是Python documentation for format string syntax的相关部分

格式的字符串包含用大括号{}括起来的“替换字段”。任何未包含在大括号中的内容都被视为原文本,它会原封不动地复制到输出中。如果您需要在文字文本中包含一个大括号字符,可以通过双击{{}}对其进行转义。

票数 2.7K
EN

Stack Overflow用户

发布于 2017-12-21 19:12:14

Python 3.6+ (2017)

在最近的Python版本中,可以使用f-strings (也可以参见PEP498)。

对于f字符串,应该使用双{{}}

代码语言:javascript
复制
n = 42  
print(f" {{Hello}} {n} ")

生成所需的

代码语言:javascript
复制
 {Hello} 42

如果需要在方括号中解析表达式,而不是使用文字文本,则需要三组方括号:

代码语言:javascript
复制
hello = "HELLO"
print(f"{{{hello.lower()}}}")

产生

代码语言:javascript
复制
{hello}
票数 140
EN

Stack Overflow用户

发布于 2011-03-29 08:08:23

您可以通过将大括号加倍来对其进行转义。

例如:

代码语言:javascript
复制
x = "{{ Hello }} {0}"
print(x.format(42))
票数 96
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5466451

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档