Python Встраиваемые методы - PullRequest
0 голосов
/ 17 марта 2020

Я действительно запутался в методе замены python. Я использовал функцию замены в двух случаях, но вывод действительно сбивает с толку. Это код ниже

story = 'there was once an old woman'

story2 = story.replace('an', 'a') .replace('old', 'young'))
print(story2)

и когда я запускаю код ниже. выход становится. когда-то была молодая женщина, кто-то, пожалуйста, скажите мне, почему был удален из женщины.

Ответы [ 2 ]

0 голосов
/ 17 марта 2020

Ссылка на снимок экрана:

Причина, по которой woman превращается в woma, заключается в том, что две последние буквы женщины - это «an». функция .replace () установлена ​​для замены всех «от» до «а». Поскольку женщина имеет в качестве последних 2 букв «an», «an» заменяется на «a», создавая иллюзию того, что «n» исчезло, когда на самом деле «an» было заменено на «a».

Вторая функция .replace («old», «young») помещается в строку «a», и поскольку слово «old» не существует в этой строке. Ничего не изменилось в выводе.

По сути, этот скриншот имеет много синтаксисов, которые, скорее всего, будут непреднамеренными и неправильными.

0 голосов
/ 17 марта 2020

Ваш код не соответствует изображению. Код правильный, но код с картинки неверный.

Второй n был удален из женщины, потому что .replace() заменяет все вхождения. Чтобы заменить только n экземпляры, передайте число.

story = 'there was once an old woman'
story2 = story.replace('an', 'a', 1).replace('old', 'young')
print(story2)
# 'there was once a young woman'

Вы можете просто выполнять функции .replace().

...