Каков предпочтительный способ включения переменных в строки в Python 3? - PullRequest
0 голосов
/ 13 июня 2018

Я начинающий программист на Python, и я использую Python 3.6, и, как я узнал из нескольких ресурсов, я заметил, что существуют разные способы включения переменной в оператор строки или печати.

  • Я знаю о добавлении строк и переменных:

    name = "Brian"
    age = 20
    print("Hello " + name + " I see you are " + str(age) + " years old.")
    
  • Я знаю об использовании запятых для смешивания переменных и строк:

    print("Hello", name, "I see you are", age, "years old.")
    
  • Я также знаю о функции .format:

    print("Hello {} I see you are {} years old.".format(name, age))
    

    Мой вопрос: какой из них является предпочтительным способом сделать это программистами Python?И есть ли различия между этими методами и когда их использовать?

Ответы [ 2 ]

0 голосов
/ 13 июня 2018

Если вы используете Python 3.6+, вы должны предпочесть строковую литеральную интерполяцию.

name = "Brian"
age = 20
print(f"Hello {name}, I see you are {age} years old.")

Вывод:

"Hello Brian, I see you are 20 years old."
0 голосов
/ 13 июня 2018

Практическое правило форматирования строк Python Дана: если строки форматирования предоставлены пользователем, используйте строки шаблонов, чтобы избежать проблем с безопасностью.В противном случае используйте интерполяцию литеральных строк, если вы используете Python 3.6+, и форматирование строк «Новый стиль», если это не так.Цитируется из книги Python Tricks The Book, Дэна Бэйдера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...