В Python у вас есть переменные в тройных кавычках? Если да, то как?

Вероятно, это очень простой вопрос для некоторых, но он меня озадачил. Можете ли вы использовать переменные в тройных кавычках python?

В следующем примере, как использовать переменные в тексте:

wash_clothes = 'tuesdays' clean_dishes = 'never' mystring =""" I like to wash clothes on %wash_clothes I like to clean dishes %clean_dishes """ print(mystring) 

Я хотел бы, чтобы это привело к:

  I like to wash clothes on tuesdays I like to clean dishes never 

Если нет, то что лучше всего обрабатывать большие фрагменты текста, где вам нужны переменные пары, и есть тонна текста и специальных символов?

  • Запретить новую строку в модуле протоколирования Python
  • Pandas: Элементарное умножение двух кадров данных
  • Доступ к значению переменной с динамическим именем
  • Ответ python parse http (строка)
  • Каковы подводные камни и обходные пути при использовании виртуальных сред Python в Windows?
  • Неблокирующий доступ к файлам с помощью Twisted
  • python 3.5 - django 1.10 - ошибка установки mysqlclient windows 7
  • Python SKLearn: Логистические вероятности регрессии
  • 5 Solutions collect form web for “В Python у вас есть переменные в тройных кавычках? Если да, то как?”

    Один из способов:

     >>> mystring =""" I like to wash clothes on %s ... I like to clean dishes %s ... """ >>> wash_clothes = 'tuesdays' >>> clean_dishes = 'never' >>> >>> print mystring % (wash_clothes, clean_dishes) I like to wash clothes on tuesdays I like to clean dishes never 

    Также посмотрите на форматирование строк

    Предпочтительным способом этого является использование str.format() а не метод, использующий % :

    Этот метод форматирования строк является новым стандартом в Python 3.0 и должен быть предпочтительнее форматирования % описанного в операциях форматирования строк в новом коде.

    Пример:

     wash_clothes = 'tuesdays' clean_dishes = 'never' mystring =""" I like to wash clothes on {0} I like to clean dishes {1} """ print mystring.format(wash_clothes, clean_dishes) 

    Да. Я считаю, что это сработает.

    do_stuff = "Tuesday"

    mystring = """I like to do stuff on %(tue)s""" % {'tue': do_stuff}

    EDIT: забыл 's' в спецификаторе формата.

    Я думаю, что самый простой способ – str.format (), как говорили другие.

    Тем не менее, я думал, что упомянул, что у Python есть класс string.Template, начинающийся с Python2.4.

    Вот пример из документов.

     >>> from string import Template >>> s = Template('$who likes $what') >>> s.substitute(who='tim', what='kung pao') 'tim likes kung pao' 

    Одной из причин, по которой мне это нравится, является использование сопоставления вместо позиционных аргументов.

    Также обратите внимание, что вам не нужна промежуточная переменная:

     name = "Alain" print """ Hello %s """ % (name) 
    Python - лучший язык программирования в мире.