В этом уроке по основам Python мы рассмотрим метод строки string.replace()
для замены старой строки на заданную новую строку.
Синтаксис:
string.replace(old, new[, count])
Аргументы:
string
- строка, к которой применяется метод, тип данных str.old
- строка, которую необходимо заменить, тип данных str.new
- новая строка на замену старой.count
- данный аргумент необязателен. Это количество совпадений старой строки, которую необходимо заменить, применяется целочисленное значение int. Если не указать этот параметр, то все строки будут изменены на новые.
Рассмотрим примеры replace()
# Строка
names_list = 'Владислав, Натали, Юлия, Анастасия'
print(names_list)
# Меняем строки Натали -> Наталья
names_list = names_list.replace('Натали', 'Наталья')
print(names_list)
# Заменяем строчную букву и на И, 2 раза
names_list = names_list.replace('и', 'И', 2)
print(names_list)
Результаты:
>>> Владислав, Натали, Юлия, Анастасия
>>> Владислав, Наталья, Юлия, Анастасия
>>> ВладИслав, Наталья, ЮлИя, Анастасия
Пример со списком:
# Строки в списке
names_list = ['Владислав', 'Юлия', 'Александр']
print(names_list)
# Меняем строку в списке
names_list = [s.replace('Александр', 'Наталья') for s in names_list]
print(names_list)
Результаты:
>>> ['Владислав', 'Юлия', 'Александр']
>>> ['Владислав', 'Юлия', 'Наталья']
Пример с мультизаменой:
names = 'Владислав, Сергей, Александр, Николай'
print(names)
for x, y in [('Владислав', "Юлия"), ('Сергей', 'Наталья')]:
names = names.replace(x, y)
print(names)
Результаты:
>>> Владислав, Сергей, Александр, Николай
>>> Юлия, Наталья, Александр, Николай