Python – универсальный и гибкий язык. Часто в нем есть несколько способов добиться какой-либо цели. В этом руководстве мы разберем несколько способов вывести строку и переменную одновременно.
Итак, давайте начнем!
Мини-задача на разогрев: являются ли две строки анаграммами?
Как использовать функцию print() в Python
Чтобы вывести что-либо на экран, мы используем функцию print()
. Пишем ключевое слово print
, за которым следует пара круглых скобок ()
. Внутри этих скобок мы помещаем то, что хотим распечатать. Это выглядит следующим образом:
Хотите скачать книги по Python в 2 клика? Тогда вам в наш телеграм канал PythonBooks
# вывод строки print("Hello world") # вывод целого числа print(7) # вывод значения переменной # чтобы просто вывести переменную, помещаем в скобки ее имя fave_language = "Python" print(fave_language) # Результат # Hello world # 7 # Python
Если вы вдруг забудете или решите опустить круглые скобки, вы получите такое сообщение об ошибке:
print "hello world" # Результат после запуска кода: # File "/Users/dionysialemonaki/python_articles/demo.py", line 1 # print "hello world" # ^^^^^^^^^^^^^^^^^^^ # SyntaxError: Missing parentheses in call to 'print'. Did you mean print(...)?
Если вы пишете код в специальном редакторе или IDE, например, в Visual Studio Code с расширением Python, ошибка типа пропущенных скобок сразу будет подчеркнута. Вы также получите подсказку о том, что именно не так в вашем коде:
Как упоминалось выше, print()
используется для вывода данных самых разных типов. Вы можете вывести строки, числа, переменные и другие типы данных.
Вы также можете выводить в одной инструкции print()
и текст (или строки), и переменные .
В следующих разделах мы разберем несколько способов справится с этой задачей.
[python_ad_block]Как вывести переменную и строку в Python с помощью конкатенации
Если мы обратимся к словарю, то узнаем, что слово конкатенация означает объединение, связывание чего-либо в одну цепочку или ряд.
В Python мы объединяем данные друг с другом при помощи оператора сложения (+).
Имейте в виду, что конкатенация используется только для строк. Поэтому, если переменная, которую вы хотите объединить с остальными строками, имеет, к примеру, целочисленный тип данных, вам придется преобразовать ее в строку с помощью функции str()
.
В следующем примере давайте выведем значение переменной вместе с каким-нибудь другим текстом.
Поместим строки в двойные кавычки, имя переменной используем без каких-либо добавлений, а для объединения строк и значения переменной применим оператор сложения. Вот так это будет выглядеть:
fave_language = "Python" print("I like coding in " + fave_language + " the most") # Результат # I like coding in Python the most
При конкатенации строк вам нужно добавлять пробелы самостоятельно. Поэтому, если бы в предыдущем примере мы не включили пробелы в кавычки, результат выглядел бы следующим образом:
fave_language = "Python" print("I like coding in" + fave_language + "the most") # Результат # I like coding inPythonthe most
Вы даже можете добавить пробелы отдельно:
fave_language = "Python" print("I like coding in" + " " + fave_language + " " + "the most") # Результат # I like coding in Python the most
Это не самый предпочтительный способ вывода строк и переменных. Всё потому, что он может быть подвержен ошибкам и требует много времени.
Как вывести переменную и строку в Python, разделив их запятыми
Вы можете указать строку и переменную в качестве аргументов функции print()
, просто перечислив их через запятую. К примеру, можно сделать следующим образом:
first_name = "John" print("Hello",first_name) # Результат # Hello John
В приведенном выше примере в скобках функции print() мы сначала добавили текст, который хотели вывести на экран. Текст — в данном случае это была строка «Hello» — взят в двойные кавычки.
После закрывающей кавычки мы добавили запятую, которая отделяет этот фрагмент текста от значения, содержащегося в имени переменной (first_name
). После этого мы добавили саму переменную.
Мы могли бы добавить ещё какой-нибудь текст после переменной, например так:
first_name = "John" print("Hello",first_name,"good to see you") # Результат # Hello John good to see you
Этот метод также работает с более чем одной переменной:
first_name = "John" last_name = "Doe" print("Hello",first_name,last_name,"good to see you") # Результат # Hello John Doe good to see you
Обязательно разделяйте все аргументы функции print() запятыми!
Если бы между first_name
и last_name
не была добавлена запятая, код выдал бы следующую ошибку:
first_name = "John" last_name = "Doe" print("Hello",first_name last_name,"good to see you") # Результат # File "/Users/dionysialemonaki/python_articles/demo.py", line 4 # print("Hello",first_name last_name,"good to see you") # ^^^^^^^^^^^^^^^^^^^^ # SyntaxError: invalid syntax. Perhaps you forgot a comma?
Как видите, сообщения об ошибках Python чрезвычайно полезны и немного упрощают процесс отладки.
Выводим переменную и строку с использованием форматирования строк
Чтобы использовать форматирование строк, нужно добавить пару фигурных скобок {}
в то место, где вы хотите добавить значение переменной. Это выглядит следующим образом:
first_name = "John" print("Hello {}, hope you're well!")
В данном примере есть одна переменная – first_name
.
Внутри print()
в качестве аргумента передана строка, котрую мы хотим вывести. Строка берется в двойные кавычки. А внутри строки мы добавили пару фигурных скобок в том месте, где хотим добавить значение переменной first_name
.
Если мы попытаемся запустить данный код, он будет иметь следующий результат:
# Результат # Hello {}, hope you're well!
Как мы видим, значение переменной first_name
не вывелось!
Чтобы это исправить, нам нужно добавить строковый метод .format()
в конец строки – то есть сразу после закрывающей кавычки. В качестве аргумента .format()
указываем имя нашей переменной. Выглядеть это будет следующим образом:
first_name = "John" print("Hello {}, hope you're well!".format(first_name)) # Результат # Hello John, hope you're well!
Если у вас больше одной переменной, вы используете столько пар фигурных скобок, сколько у вас переменных:
first_name = "John" last_name = "Doe" print("Hello {} {}, hope you're well!")
В данном примере мы создали две переменные и хотим вывести на экран обе, одну за другой. Поэтому мы добавили два набора фигурных скобок в те места, где должны быть вставлены значения наших переменных.
Что касается метода .format()
, важно понимать, что здесь имеет значение порядок, в котором вы помещаете имена переменных внутрь метода.
На место первой пары фигурных скобок будет вставлено значение той переменной, имя которой вы указали в методе format() первым. На место второй пары фигурных скобок встанет значение второй указанной переменной.
Внутри метода обязательно разделяйте имена переменных запятыми:
first_name = "John" last_name = "Doe" print("Hello {} {}, hope you're well!".format(first_name,last_name)) # Результат # Hello John Doe, hope you're well!
Если бы мы изменили порядок переменных внутри метода, результат выглядел бы несколько иначе:
first_name = "John" last_name = "Doe" print("Hello {} {}, hope you're well!".format(last_name,first_name)) # Результат # Hello Doe John, hope you're well!
Как вывести переменную и строку с помощью f-строк
f-строки – лучший, более читаемый и лаконичный способ форматирования строк по сравнению с методом, который мы видели в предыдущем разделе.
Его синтаксис проще и требует меньше ручной работы.
Общий синтаксис для создания f-строки выглядит следующим образом:
print(f"I want this text printed to the console!") # Результат # I want this text printed to the console!
Перед открывающими кавычками внутри функции print()
добавляется буква f/
Чтобы напечатать переменную со строкой в одном операторе print()
, вы снова включаете символ f
в то же место – прямо перед кавычками.
Затем вы добавляете нужный текст, а в том месте, где нужно вставить значение переменной, вы добавляете пару фигурных скобок {}
с именем переменной внутри них. После этого можно добавить еще текст и закрыть кавычки (или просто закрыть кавычки). Вот так это должно выглядеть:
first_name = "John" print(f"Hello, {first_name}!") #output #Hello, John!
Чтобы напечатать больше одной переменной, вы добавляете еще один набор фигурных скобок со вторым именем переменной:
first_name = "John" last_name = "Doe" print(f"Hello, {first_name} {last_name}!") # Результат # Hello, John Doe!
Порядок размещения имен переменных опять же имеет значение. Поэтому убедитесь, что вы добавляете их в соответствии с желаемым результатом.
Если бы мы изменили порядок имен, мы бы получили следующий результат:
first_name = "John" last_name = "Doe" print(f"Hello, {last_name} {first_name}!") # Результат # Hello, Doe John!
Заключение
Спасибо, что дочитали до конца! Теперь вы знаете, как вывести одновременно строку и переменную в одной строке.
Надеемся, что данная статья была вам полезна. Успехов в написании кода!
Перевод статьи «Python Print Variable – How to Print a String and Variable».