【发布时间】:2012-01-10 05:04:07
【问题描述】:
可能重复:
How can I print a literal “{}” characters in python string and also use .format on it?
基本上,我想使用.format(),像这样:
my_string = '{{0}:{1}}'.format('hello', 'bonjour')
并让它匹配:
my_string = '{hello:bonjour}' #this is a string with literal curly brackets
但是,第一段代码给了我一个错误。
大括号很重要,因为我使用 Python 通过基于文本的命令与软件进行通信。我无法控制 fosoftware 期望什么样的格式,所以我最终整理所有格式是至关重要的。它在字符串周围使用大括号来确保字符串中的空格被解释为单个字符串,而不是多个参数 - 就像您通常在文件路径中使用引号一样。
我目前正在使用旧方法:
my_string = '{%s:%s}' % ('hello', 'bonjour')
这当然有效,但 .format() 似乎更易于阅读,并且当我在一个字符串中发送包含五个或更多变量的命令时,可读性成为一个重要问题。
谢谢!
【问题讨论】:
-
使用“{{{0}:{1}}}”(双{{)stackoverflow.com/questions/5466451/…
-
是的,这个问题的重复。
标签: python string formatting string-formatting curly-brackets