在Python中,有没有一种方法可以多次格式化一个字符串?

3

我有一个这样的字符串:

my_string = '{general_setting} ... {specific_setting}'

general_setting是整个程序的通用设置(即数据库密码),而specific_setting可以在程序中各不相同。有没有一种方法可以对一个字符串进行两次格式化?首先插入general_setting,然后再使用预先准备好的字符串稍后插入specific_setting?

我确信这个问题以前肯定被问过,但我能找到的都是关于如何多次插入相同值的问题,而不是如何在不同的时间插入不同的值。


你能提供一个 [mcve] 吗? - Gsk
3个回答

17
你可以根据花括号数量进行任何格式的设置。
>>> template = '{general_setting} ... {{specific_setting}}'.format(general_setting='general')
>>> my_string = template.format(specific_setting='specific')
>>> print (my_string)
general ... specific

8

4
一些补充,@Sunitha 的答案中,第一次格式化是 {},第二次是 {{}},第三次不是 {{{}}},而是 {{{{}}}}四个花括号,因为每次格式化时,花括号会减少一个。

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