Заменить все вхождения одной подстроки другой подстрокой

Пайтона str типа также есть метод для замены вхождений одной подстроки с другой подстроки в заданной строке. Для более сложных случаев можно использовать re.sub .

str.replace(old, new[, count]) :

str.replace принимает два аргумента , old и new , содержащий old подстроку , которая должна быть заменена на new подстроку. Необязательный аргумент count определяет число замен , чтобы быть:

Например, для того , чтобы заменить 'foo' с 'spam' в следующей строке, мы можем назвать str.replace с old = 'foo' и new = 'spam' :

 >>> "Make sure to foo your sentence.".replace('foo', 'spam')
"Make sure to spam your sentence."

 

Если данная строка содержит несколько примеров , которые соответствуют old аргументу, все вхождения заменяются значением подаваемого в new :

 >>> "It can foo multiple examples of foo if you want.".replace('foo', 'spam')
"It can spam multiple examples of spam if you want."

 

если, конечно, мы не поставляем значение для count . В этом случае count вхождения собираются заменяются:

 >>> """It can foo multiple examples of foo if you want, \
... or you can limit the foo with the third argument.""".replace('foo', 'spam', 1)
'It can spam multiple examples of foo if you want, or you can limit the foo with the third argument.'