В Python 2.6+ и Python 3 вы можете выбрать более новый метод форматирования строки.
print('<a href="{0}">{0}</a>'.format(my_url))
, который избавляет вас от повторения аргумента, или
print('<a href="{url}">{url}</a>'.format(url=my_url))
, есливам нужны именованные параметры.
print('<a href="{}">{}</a>'.format(my_url, my_url))
, который является строго позиционным и поставляется только с оговоркой, что аргументы format () следуют правилам Python, где сначала должны быть указаны безымянные аргументы, за которыми следуют именованные аргументы, за которыми следует * args (последовательность, такая как list или tuple), а затем * kwargs (текст, снабженный строками, если вы знаете, что хорошо для вас).Точки интерполяции определяются сначала путем подстановки именованных значений по их меткам, а затем позиционно из того, что осталось.Итак, вы также можете сделать это ...
print('<a href="{not_my_url}">{}</a>'.format(my_url, my_url, not_my_url=her_url))
Но не это ...
print('<a href="{not_my_url}">{}</a>'.format(my_url, not_my_url=her_url, my_url))