Python print text and string

Alright, I know how to print variables and strings. But how can I print something like «My string» card.price (it is my variable). I mean, here is my code: print «I have » (and here I would like to print my variable card.price) .

The syntax in the question will only work in Python 2, where print was not yet a function. Most of the answers here will work in both Python 2 and Python 3; anything where print is not followed by a left round parenthesis ( is Python 2 only, whereas the ones with parentheses will generally work in both versions.

7 Answers 7

By printing multiple values separated by a comma:

The print statement will output each expression separated by spaces, followed by a newline.

If you need more complex formatting, use the ».format() method:

or by using the older and semi-deprecated % string formatting operator.

what about the possibility of format strings and basic string concatenation? Could extend your answer in a nice way showing different approaches for different purposes.

@alexvassel: But mine contains documentation links, a better example, and points to % string formatting too. 😛

@NedBatchelder: There has been deprecation ‘noise’ about it, I know it’s not deprecated now but it is clear .format() is to be preferred.

Something that (surprisingly) hasn’t been mentioned here is simple concatenation.

foo = "seven" print("She lives with " + foo + " small men") 

She lives with seven small men

Additionally, as of Python 3, the % method is deprecated. Don’t use that.

Works fine 🙂 for a multiple var injection (with outfile print ) : print(«SELECT mot FROM » + choixL + » WHERE mot LIKE » + mot + «;», file=open(«verif.sql», «a»))

If you are using python 3.6 and newer then you can use f-strings to do the task like this.

just include f in front of your string and add the variable inside curly braces < >.

Refer to a blog The new f-strings in Python 3.6: written by Christoph Zwerschke which includes execution times of the various method.

Screw F-strings. They break on both Python2 and Python3. The Python devs should get a Darwin award for breaking basic I/O yet again.

This feature was introduced in python 3.6. it would obviously break if you use it on earlier python releases. don’t use them if you are using legacy python. you can use the good old format().

Assuming you use Python 2.7 (not 3):

print «I have», card.price (as mentioned above).

print «I have %s» % card.price (using string formatting)

Читайте также:  Int list java example

print » «.join(map(str, [«I have», card.price])) (by joining lists)

There are a lot of ways to do the same, actually. I would prefer the second one.

From what I know, printing can be done in many ways

Printing string with variables

a = 1 b = "ball" print("I have", a, b) 

Versus printing string with functions

a = 1 b = "ball" print("I have" + str(a) + str(b)) 

In this case, str() is a function that takes a variable and spits out what its assigned to as a string

They both yield the same print, but in two different ways. I hope that was helpful

If the Python version you installed is 3.6.1, you can print strings and a variable through a single line of code. For example the first string is «I have», the second string is «US Dollars» and the variable `card.pricè is equal to 300, we can write the code this way:

print("I have", card.price, "US Dollars") 

The print() function outputs strings to the screen.
The comma lets you concatenate and print strings and variables together in a single line of code.

Источник

Как вывести строку и переменную в Python

Python – универсальный и гибкий язык. Часто в нем есть несколько способов добиться какой-либо цели. В этом руководстве мы разберем несколько способов вывести строку и переменную одновременно.

Как использовать функцию print() в Python

Чтобы вывести что-либо на экран, мы используем функцию print() . Пишем ключевое слово print , за которым следует пара круглых скобок () . Внутри этих скобок мы помещаем то, что хотим распечатать. Это выглядит следующим образом:

# вывод строки 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 с помощью конкатенации

Если мы обратимся к словарю, то узнаем, что слово конкатенация означает объединение, связывание чего-либо в одну цепочку или ряд.

В Python мы объединяем данные друг с другом при помощи оператора сложения (+).

Имейте в виду, что конкатенация используется только для строк. Поэтому, если переменная, которую вы хотите объединить с остальными строками, имеет, к примеру, целочисленный тип данных, вам придется преобразовать ее в строку с помощью функции str() .

Читайте также:  404 Not Found

В следующем примере давайте выведем значение переменной вместе с каким-нибудь другим текстом.

Поместим строки в двойные кавычки, имя переменной используем без каких-либо добавлений, а для объединения строк и значения переменной применим оператор сложения. Вот так это будет выглядеть:

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 не вывелось!

Читайте также:  Window event type javascript

Чтобы это исправить, нам нужно добавить строковый метод .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, !") #output #Hello, John!

Чтобы напечатать больше одной переменной, вы добавляете еще один набор фигурных скобок со вторым именем переменной:

first_name = "John" last_name = "Doe" print(f"Hello, !") # Результат # Hello, John Doe!

Порядок размещения имен переменных опять же имеет значение. Поэтому убедитесь, что вы добавляете их в соответствии с желаемым результатом.

Если бы мы изменили порядок имен, мы бы получили следующий результат:

first_name = "John" last_name = "Doe" print(f"Hello, !") # Результат # Hello, Doe John!

Заключение

Спасибо, что дочитали до конца! Теперь вы знаете, как вывести одновременно строку и переменную в одной строке.

Надеемся, что данная статья была вам полезна. Успехов в написании кода!

Источник

Оцените статью