Я начинающий программист на 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?И есть ли различия между этими методами и когда их использовать?
Если вы используете 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."
Практическое правило форматирования строк Python Дана: если строки форматирования предоставлены пользователем, используйте строки шаблонов, чтобы избежать проблем с безопасностью.В противном случае используйте интерполяцию литеральных строк, если вы используете Python 3.6+, и форматирование строк «Новый стиль», если это не так.Цитируется из книги Python Tricks The Book, Дэна Бэйдера.