@Azamgl

Вопрос связанный с replace Python?

Мне надо написать код, чтобы поменять текст [b] и [/b] в <.b> и <./b> непосредственно.
Я использовал функцию replace, но там можно поменять лишь одну пару этих тегов.
То есть я писал так:
stroka = input()
new_stroka = stroka.replace("[b]", "<.b>", '[/b]', '<./b>')
print(new_stroka) , но это ошибка.
stroka = input()
new_stroka = stroka.replace("[b]", "<.b>")
new_stroka = stroka.replace("[/b]", "<./b>")
print(new_stroka) , но в таком случае изменяется только вторая строка, первую он игнорирует,
Кто знает, как это можно реализовать помогите.
  • Вопрос задан
  • 149 просмотров
Решения вопроса 3
fox_12
@fox_12 Куратор тега Python
Расставляю биты, управляю заряженными частицами
stroka = '[b]ew f  f sd fa sd fasdfasdf[/b]'
stroka.replace("[b]", "<.b>").replace("[/b]", "<./b>")

'<.b>ew f f sd fa sd fasdfasdf<./b>'
Ответ написан
trapwalker
@trapwalker Куратор тега Python
Программист, энтузиаст
stroka = input()
new_stroka = stroka.replace("[b]", "<.b>")
new_stroka = new_stroka.replace("[/b]", "<./b>")
print(new_stroka)

Строки в питоне неизменяемые. replace создаёт новую строку с замененными последовательностями. А вы результат первой замены затираете результатом второй.
Ответ написан
hottabxp
@hottabxp Куратор тега Python
Сначала мы жили бедно, а потом нас обокрали..
new_stroka = stroka.replace('[b]', '<.b>').replace('[/b]', '<./b>')
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы