如何混合命名和未命名的字符串格式

时间:2013-10-06 19:55:37

标签: python string python-3.x formatting

如何混合命名和未命名的字符串格式? 请考虑以下未运行的示例:

s = "{:s}_{later}_{:s}".format("foo", "bar")
s1 = s.format(later="later")

我想首先格式化包含named postioner的内容,以便以后格式化。如何在python中实现某些目标?

1 个答案:

答案 0 :(得分:5)

您必须转义命名的格式部分:

>>> "{:s}_{{later}}_{:s}".format("foo", "bar")
'foo_{later}_bar'
>>> _.format(later="later")
'foo_later_bar'

或者相反:

>>> "{{:s}}_{later}_{{:s}}".format(later="later")
'{:s}_later_{:s}'
>>> _.format("foo", "bar")
'foo_later_bar'