用变量Python替换字符串中的字符

时间:2019-06-24 16:47:00

标签: python string replace

我有一个String,我需要在每个循环中用一个变量更改其中的一个字符

我正在尝试使用.replace和.format来执行此操作,但是出了点问题。

searchlink = "https://acervo.estadao.com.br/procura/#!/ministro/Acervo//spo/2/2000/2003//Primeira"
x = 2

for y in range(10):
    x += 1
    i = x - 1
    global searchlink
    searchlink = (searchlink.replace('/{}/', '/{}/').format(i, x))

1 个答案:

答案 0 :(得分:2)

您的字符串格式代码中的操作顺序错误。您想对要传递给replace的字符串进行格式化,但目前却以其他顺序进行格式化(您可以使用'/{}/'字符串进行替换调用,这是无用的,然后尝试稍后再格式化)。

尝试searchlink = searchlink.replace('/{}/'.format(i), '/{}/'.format(x))

请注意,即使ix是整数,这也将起作用,因此您可能不需要在代码中的前面调用str