- Функция Print() в Python
- Необязательные аргументы:
- Вывод
- Функция print() в Python
- Параметры
- Возвращаемое значение
- Пример 1: Как работает?
- Пример 2: С разделителями и конечными параметрами
- Пример 3: С параметром файла
- Функции Print Python 3
- Полный синтаксис функции print()
- Параметры print()
- Возвращаемое значение
- Пример 1 : Как работает функция print в Python?
- Пример 2: функция print() с разделителем и параметром end
- Пример 3: функция print() с параметром file
Функция Print() в Python
На примерах узнайте, какие возможности предлагает функция print в Python.
Многие из вас при чтении этого руководства наверняка подумают, что в этой простой функции нет ничего нераскрытого, потому что именно с print многие начинают свое знакомство с Python, выводя на экран заветную фразу Hello, World! . Это естественно не только для Python, но и для любого языка, что функция print является базовой и одним из первых шагов при изучении как программирования в целом, так и конкретного синтаксиса. Однако со временем многие переходят к более продвинутым темам, забывая о возможностях простых на первый взгляд функций.
Это руководство целиком посвящено функции print в Python — из него вы узнаете о том, насколько она недооценена.
Если в Python 2 скобки можно не использовать, то в Python3 они обязательны. Если их не указать, то будет вызвана синтаксическая ошибка.
File "", line 1 print "Hello, World!" ^ SyntaxError: Missing parentheses in call to 'print'. Did you mean print("Hello, World!")?
Из текста выше можно сделать вывод, что в Python 3 print() — это не инструкция, а функция.
Чтобы убедиться, проверим type/class функции print() .
builtin_function_or_method
Возвращается builtin_function_or_method . Это значит, что это ранее определенная или встроенная функция Python.
Предположим, что нужно добавить перенос строки или вертикальный отступ между двумя выводами. Для этого достаточно вызвать print() , не передавая аргументов.
print("Hello, World!");print("Hello, World!")
print("Hello, World!") print() print("Hello, World!")
Рассмотрим синтаксис функции print() .
print(value, . sep=», end=’\n’, file=sys.stdout, flush=False)
Как вы знаете, функция print выводит значения в поток данных или в sys.stdout по умолчанию. sys.stdout или стандартный вывод системы означают, что функция print выведет значение на экран. Его можно поменять на stdin или stderr .
Необязательные аргументы:
- sep — это может быть строка, которую необходимо вставлять между значениями, по умолчанию — пробел. Вставим список слов в print и разделим их с помощью символа новой строки. Еще раз: по умолчанию разделитель добавляет пробел между каждым словом.
print('туториал', 'по', 'функции', 'print()')
туториал по функции print()
# \n перенесет каждое слово на новую строку print('туториал', 'по', 'функции', 'print()', sep='\n')
туториал по функции print()
Также можно разделить слова запятыми или добавить два символа новой строки ( \n ), что приведет к появлению пустой строки между каждой строкой с текстом или, например, знак плюс ( + ).
print('туториал', 'по', 'функции', 'print()', sep=',')
print('туториал', 'по', 'функции', 'print()', sep='\n\n')
туториал по функции print()
print('туториал', 'по', 'функции', 'print()', sep=',+')
Прежде чем переходить к следующему аргументу, end , стоит напомнить, что в функцию можно передать и переменную. Например, определим список целых чисел и вставим его в функцию pass . Это список и будет выведен.
int_list = [1,2,3,4,5,6] print(int_list)
Предположим, есть две строки, а задача состоит в том, чтобы объединить их, оставив пробел. Для этого нужно в первой функции print указать первую строку, str1 и аргумент end с кавычками. В таком случае на экран выведутся две строки с пробелом между ними.
str1 = 'туториал по' str2 = 'функции print()' print(str1) print(str2)
туториал по функции print()
туториал по функции print()
Возьмем другой пример, где есть функция, которая должна выводить значения списка на одной строке. Этого можно добиться с помощью такого значения аргумента end :
def value(items): for item in items: print(item, end=' ') value([1,2,3,4])
file = open('print.txt','a+') def value(items): for item in items: print(item, file=file) file.close() # закройте файл после работы с ним. value([1,2,3,4,5,6,7,8,9,10])
import time print('Пожалуйста, введите ваш электронный адрес : ', end=' ') # print('Пожалуйста, введите ваш электронный адрес : ', end=' ', flush=True) # запустите код выше, чтобы увидеть разницу. time.sleep(5)
Пожалуйста, введите ваш электронный адрес :
А теперь посмотрим, как можно использовать функцию print для получения ввода от пользователя в Jupyter Notebook. Для этого используется встроенная функция input() .
tutorial_topic = input() print("Тема сегодняшнего урока: ", end='') print(tutorial_topic)
функция print() Тема сегодняшнего урока: функция print()
Здесь указан опциональный аргумент end , который объединяет статическую инструкцию в print и ввод пользователя.
Рассмотрим другие интересные способы вывода значений переменных в функции print .
- Для отображения значения переменной вместе с определенной строкой, нужно лишь добавить запятые между ними. В этом случае положение строки и переменной не имеет значения.
a = 2 b = "PythonRU" print(a,"— целое число, а",b,"— строка.")
2 — целое число, а PythonRU — строка.
a = 2 b = "PythonRU" print(" — целое число, а — строка.".format(a,b))
2 — целое число, а PythonRU — строка.
Если поставить одинаковый номер индекса в обоих местах, то при выводе на этих позициях будут одни и те же значения.
a = 2 b = "PythonRU" print(" — целое число, а — строка.".format(a,b))
PythonRU — целое число, а PythonRU — строка.
a = 2 b = "PythonRU" print("%d — целое число, а %s — строка."%(a,b))
2 — целое число, а PythonRU — строка.
Посмотрим, что произойдет, если указать %s для переменной a , которая является целым числом.
print("%s — целое число, а %s — строка."%(a,b))
2 — целое число, а PythonRU — строка.
Как видно, все работает. Причина в том, что функция print неявно выполняет typecasting и конвертирует целое число в строку. Но в обратном порядке это работать не будет. Функция не сможет конвертировать строку в целое число, а вместо этого выведется TypeError .
print("%d — целое число, а %d — строка."%(a,b))
--------------------------------------------------------------------------- TypeError Traceback (most recent call last) in ----> 1 print("%d — целое число, а %d — строка."%(a,b)) TypeError: %d format: a number is required, not str
Вывод
Это руководство — отличная отправная точка для новичков, желающих добиться высокого уровня мастерства в Python. Поиграйте с функций print еще и разберитесь с другими возможностями, которые не были рассмотрены здесь.
Функция print() в Python
Функция print() выводит указанный объект на стандартное устройство вывода (экран) или в файл текстового потока.
print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)
Параметры
- объекты ‒ объект печатается. * означает, что может быть более одного объекта.
- sep ‒ объекты разделяются sep. Значение по умолчанию: ‘ ‘.
- конец ‒ печатается конец.
- файл ‒ должен быть объект с методом записи (строковый). Если его опустить, будет использоваться sys.stdout, который печатает объекты на экране.
- flush ‒ если True, поток принудительно очищается. Значение по умолчанию: False.
Примечание: sep, end, file и flush являются аргументами ключевых слов. Если вы хотите использовать аргумент sep, вы должны использовать:
print(*objects, sep = 'separator')
Возвращаемое значение
Он не возвращает никакого значения; не возвращает None.
Пример 1: Как работает?
print("Python is fun.") a = 5 # Two objects are passed print("a yandex_rtb_R-A-1581484-1">