Уведомления

Группа в Telegram: @pythonsu

#1 Сен. 29, 2010 01:52:23

Vader
От:
Зарегистрирован: 2010-01-30
Сообщения: 152
Репутация: +  0  -
Профиль   Отправить e-mail  

Замена по очереди, или замена n-ой подстроки

bw
> Зачет
…до первого a.count('SOME') != len(somes).
Ну задача из стартпоста этого, как бы, не предполагает. А из приведенных решений, это - самое элегантное, имхо.
Кстати, в случае если a.count('SOME') != len(somes) варианты со split тоже будут работать неправильно.



Офлайн

#2 Сен. 29, 2010 03:08:52

Isem
От:
Зарегистрирован: 2010-08-27
Сообщения: 447
Репутация: +  7  -
Профиль   Отправить e-mail  

Замена по очереди, или замена n-ой подстроки

result = a.replace('SOME', '{}', len(somes)).format( *somes )
Будет работать в любом случае (как и первый вариант в посте #4).

Хотя шаблон и значения лучше сразу делать в виде:
template = "привет я {name} , вот тебе {thing1} и {thing2}"
values = {'name': "Jhony", 'thing1': "sosiska", 'thing2': "python"}
И тогда не надо ничего мудрить:
result = template.format( **values )



Отредактировано (Сен. 29, 2010 03:32:22)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version