В этой статье мы поговорим о том, как заменить подстроку внутри строки в Python, используя метод replace()
.
Содержание
.replace () Метод
В Python строки представлены как неизменяемые объекты str
. Класс str
имеет множество методов, позволяющих управлять строками.
Метод .replace()
имеет следующий синтаксис:
str.replace(old, new[, maxreplace])
str
— строка, с которой вы работаете.-
old
— Подстрока, которую нужно заменить. -
new
— подстрока, заменяющая старую подстроку. -
maxreplace
— необязательный аргумент. Количество совпадений старой подстроки, которую вы хотите заменить. Матчи отсчитываются с начала строки.
Метод возвращает копию строки srt
с некоторыми или всеми совпадениями подстроки old
замененной на new
. Если maxreplace
не указан, заменяются все вхождения.
В приведенном ниже примере мы заменяем подстроку far
в строке s
с miles
:
s = 'A long time ago in a galaxy far, far away.'
s.replace('far', 'miles')
Результатом является новая строка:
'A long time ago in a galaxy miles, miles away.'
Если maxreplace
необязательный аргумент maxreplace
, он ограничивает количество заменяемых совпадений. В следующем примере мы заменяем только первое вхождение:
s = 'My ally is the Force, and a powerful ally it is.'
s.replace('ally', 'friend', 1)
Строка результата будет выглядеть так:
'My friend is the Force, and a powerful ally it is.'
Чтобы удалить подстроку, используйте вместо нее пустую строку ''
. Например, чтобы удалить space
из следующей строки, вы должны использовать:
s = 'That’s no moon. It’s a space station.'
s.replace('space ', '')
Новая строка будет выглядеть следующим образом:
`That’s no moon. It’s a station.'
Заменить подстроку в списке строк
Чтобы заменить подстроку в списке строк, используйте конструкцию понимания списка, как показано ниже:
s.replace('old', 'new') for s in list
Давайте посмотрим на следующий пример:
names = ['Anna Grace', 'Betty Grace', 'Emma Grace']
new_names = [s.replace('Grace', 'Lee') for s in names]
print(new_names)
Приведенный выше код создает копию списка, в котором все вхождения подстроки Grace
заменены на Lee
:
['Anna Lee', 'Betty Lee', 'Emma Lee']
Выводы
Замена подстроки в строке — одна из самых основных операций при написании кода на Python. После прочтения этого руководства вы должны хорошо понимать, как использовать метод replace()
.
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.