有两种情况
如果出现的变量不重复,则可以按替换的顺序替换:
>>> text = "x1 是 {},x2是{}".format(1,2)
>>> text
'x1 是 1,x2是2'
如果字符串中的变量排序复杂,比如有重复出现的情况,则可以考虑使用{name}
的形式给字符串中的不同变量取不同的名字。
下面的例子演示了在迭代中我们通常想知道第\(n\)次迭代时变量的值(\(x_n,y_n\))是多少的问题:
def string_replacement():
x_n = 1
y_n = 2
iterate_number = 0
while iterate_number < 5:
iterate_number += 1
text = "x_{n}: {x_n}; y_{n}: {y_n}"
print(text.format(n=iterate_number, x_n=float(x_n), y_n=float(y_n)))
x_n += 1
y_n += 1
string_replacement()
输出结果:
x_1: 1.0; y_1: 2.0
x_2: 2.0; y_2: 3.0
x_3: 3.0; y_3: 4.0
x_4: 4.0; y_4: 5.0
x_5: 5.0; y_5: 6.0