Услуги Портфолио Контакты БлогНовости +7 (800) 511‑32‑27 Обсудить проект
Статьи

Функция print в Python

16 декабря 2025·6 мин чтения
Логотип YuSMP Group
Автор материалаРедакция компании YuSMP GroupБлог YuSMP Group
Профиль редакции
Функция print в Python
Консультация эксперта

Кратко: Функция print() — встроенный инструмент Python для вывода данных на экран: строк, чисел, списков и других объектов. Она принимает несколько аргументов через запятую, поддерживает параметры sep, end, file и flush, а форматировать вывод можно f-строками или методом .format(). Ниже — рабочие примеры кода, сравнительная таблица параметров, разбор типичных ошибок и ответы на частые вопросы.

Функция встречается в каждом Python-проекте — от учебного скрипта до продакшн-бэкенда. Если нужна разработка бэкенда на Python под ваш продукт — команда YuSMP Group поможет с архитектурой, код-ревью и запуском в прод.

Введение

Python — один из самых массовых языков разработки. По данным Stack Overflow Developer Survey 2025 его использовали 57.9% профессиональных разработчиков. Поэтому базовые вещи вроде print() встречаются буквально в каждом проекте, от учебных скриптов до продакшн-инструментов, CLI-утилит и быстрых прототипов. Если вдруг в наследуемом коде вам попадётся Python 2, важно помнить, что Python2 официально “снят с поддержки” с 1 января 2020, и развивать/чинить его больше не будут — поэтому современное руководство логично строить вокруг Python 3. 

Функция print в Python — одна из первых, с которой знакомится любой начинающий программист. Её основная задача — выводить информацию на экран, будь то строки, числа, списки или другие объекты. Функция print используется практически в каждом проекте, независимо от его масштаба: от простых скриптов до сложных программных комплексов.

Вывод данных — важнейший элемент в разработке, отладки и тестировании программ. Без функции print было бы сложно понять, какие значения имеют переменные в тот или иной момент выполнения программы, правильно ли работает тот или иной алгоритм, как происходит обработка пользовательского ввода. Благодаря простоте использования и высокой гибкости функция print остаётся незаменимым инструментом как для новичков, так и для профессионалов.

В Python функция print обладает множеством возможностей настройки. Помимо базового вывода текста, она позволяет изменять формат вывода, управлять разделителями между элементами, перенаправлять вывод в файлы, работать с буферизацией и использовать более сложные схемы форматирования строк.

Простейший пример использования функции:

print("Привет, мир!")

Этот код выводит строку "Привет, мир!" в стандартный поток вывода — обычно это окно консоли или терминала. Такой простой пример показывает, насколько легко начать работу с выводом данных в Python.

Нужна разработка мобильного приложения или сайта? 

Заполните форму и мы свяжемся с вами в течение 24 часов. Подробно разберём вашу задачу, предложим оптимальное решение реализации, расскажем о сроках и стоимости.

Обсудить проект

Нужны разработчики в команду?

Подберём инженеров нужного стека под ваш проект — быстрый старт.

Обсудить команду

Как вывести данные на экран

Чтобы вывести данные на экран, необходимо использовать функцию, передав ей аргументы, которые должны быть отображены. Функция автоматически преобразует объекты в строку, если это необходимо.

Пример:

name = "Алексей"
age = 30
print("Имя:", name, "Возраст:", age)

Этот код выведет: Имя: Алексей Возраст: 30. Функция автоматически добавляет пробелы между аргументами.

Что нужно сделать для вывода на экран нескольких значений?

Для вывода нескольких значений достаточно передать их через запятую в функцию. Python объединит их в одну строку, вставляя между ними пробелы.

Пример:

x, y, z = 5, 10, 15
print(x, y, z)

Результат выполнения: 5 10 15. Функция справляется с разными типами данных, преобразуя их к строковому виду.

Также можно использовать оператор конкатенации строк:

first_name = "Иван"
last_name = "Петров"
print(first_name + " " + last_name)

В этом случае добавляется пробел вручную между строками. Учтите: конкатенация работает только со строками — print("Итого: " + 100) вызовет TypeError, для чисел сначала понадобится str() или f-строка.

Аргументы функции print

Функция обладает множеством настроек благодаря аргументам. Основные аргументы функции:

  • sep — разделитель между переданными значениями;
  • end — символ, который будет добавлен в конце вывода;
  • file — объект файла для вывода;
  • flush — принудительная очистка буфера вывода.

Рассмотрим каждый аргумент отдельно с примерами кода.

Сравнение параметров print: sep, end, file и flush

Каждый параметр отвечает за свою часть вывода и не пересекается с остальными — их можно комбинировать в одном вызове. Для быстрого ориентира — таблица со значением по умолчанию и типичным сценарием использования.

ПараметрПо умолчаниюЧто делаетКогда использовать
sep' ' (пробел)Разделитель между переданными аргументамиВывод в формате CSV, дат через дефис, компактных списков
end'\n'Символ(ы) в конце выводаПечать в одну строку в цикле, прогресс-бар без переноса
filesys.stdoutПоток, куда направляется выводЛогирование в файл, вывод ошибок в sys.stderr
flushFalseПринудительная очистка буфераВывод в реальном времени: прогресс, стриминг логов
Вывод функции print в консоли Python с разными параметрами

Sep

Аргумент sep задаёт строку-разделитель между аргументами. По умолчанию используется пробел. Можно изменить его на любой символ или строку.

Пример:

print("apple", "banana", "cherry", sep=", ")

Вывод будет выглядеть так: apple, banana, cherry.

Ещё пример использования:

print(2025, 4, 28, sep="-")

Результат: 2025-4-28. Функция позволяет гибко настраивать разделители между элементами вывода.

File

Аргумент file позволяет направить вывод функции не на экран, а в файл или другой поток. Обычно это используется для записи логов.

Пример записи в файл:

with open('output.txt', 'w') as f:
    print("Это будет записано в файл.", file=f)

В результате в файле output.txt появится строка: Это будет записано в файл.

Таким образом, функция может использоваться не только для вывода на экран, но и для работы с файлами. Тот же приём применяют для разделения потоков — обычный вывод идёт в sys.stdout, а ошибки и предупреждения удобно направлять в sys.stderr:

import sys
print("Обычное сообщение")
print("Ошибка: файл не найден", file=sys.stderr)

Flush

Аргумент flush принудительно очищает буфер вывода. По умолчанию flush=False, что означает, что данные могут оставаться в буфере до его автоматической очистки. Установка flush=True заставляет Python немедленно отправить данные на вывод.

Пример:

import time

for i in range(3):
    print(i, flush=True)
    time.sleep(1)

Каждое число будет выводиться с задержкой в одну секунду. Функция print с flush=True полезна при выводе данных в реальном времени — например, для прогресс-бара или живых логов в консоли.

End

Аргумент end управляет тем, что будет добавлено в конец вывода. По умолчанию это символ новой строки (\n). Его можно изменить на любой другой текст.

Пример:

print("Привет,", end=" ")
print("мир!")

Результат: Привет, мир!. Благодаря аргументу end можно контролировать форматирование вывода в Python.

Другой пример:

for i in range(5):
    print(i, end="; ")

Вывод: 0; 1; 2; 3; 4;. Здесь функция print помогает выводить элементы в одной строке.

Услуги мобильной разработки
Узнайте цену

Использовать функцию print для получения ввода от пользователя в Jupyter Notebook

Хотя основная задача функции — это вывод информации, она часто используется вместе с функцией input, особенно в Jupyter Notebook. Например, сначала можно вывести сообщение с помощью print, а затем запросить данные у пользователя.

Пример:

print("Введите ваше имя:")
name = input()
print("Привет,", name)

В Jupyter Notebook это особенно удобно для пошагового общения с пользователем.

Более сложный пример:

print("Введите два числа:")
a = int(input())
b = int(input())
print("Сумма:", a + b)

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

Форматирование вывода: f-строки и метод format

С Python 3.6 самый быстрый и читаемый способ подставить переменные в строку — f-строка: перед кавычками ставится буква f, а имя переменной пишется прямо внутри фигурных скобок.

name = "Иван"
age = 25
print(f"Меня зовут {name} и мне {age} лет.")

Вывод: Меня зовут Иван и мне 25 лет. Внутри фигурных скобок можно писать не только имена переменных, но и выражения:

price = 1999.5
print(f"Цена со скидкой: {price * 0.9:.2f} ₽")

Спецификатор :.2f после двоеточия округляет число до двух знаков после запятой — Цена со скидкой: 1799.55 ₽.

До появления f-строк для той же задачи использовали метод .format() — он остаётся рабочим и встречается в старом коде:

print("Меня зовут {} и мне {} лет.".format(name, age))

Вывод: Меня зовут Иван и мне 25 лет.

Также можно указывать позиции:

print("Возраст: {1}, Имя: {0}".format(name, age))

Результат: Возраст: 25, Имя: Иван.

Или использовать именованные параметры:

print("Имя: {n}, Возраст: {a}".format(n=name, a=age))

Для новых проектов PEP 498 и практика сообщества рекомендуют f-строки: они короче, быстрее на выполнении и меньше подвержены ошибкам с порядком аргументов, чем .format().

Какие типичные ошибки допускают при использовании print()?

Большинство ошибок с print связаны не с самой функцией, а с непониманием того, что она возвращает и как работает с типами данных.

  • Синтаксис Python 2. Конструкция print "текст" без скобок — это Python 2, который официально не поддерживается с 1 января 2020 года. В Python 3 print — функция, скобки обязательны.
  • print() возвращает None. Функция ничего не возвращает — она только печатает. Код вида x = print("привет") присвоит переменной x значение None, а не строку.
  • Смешивание типов без преобразования. print("Итого: " + 100) вызовет TypeError — Python не складывает строку и число автоматически. Нужен str(100) или f-строка f"Итого: {100}".
  • print в проде вместо логирования. Для отладки на локальной машине print удобен, но в продакшн-коде вывод стоит направлять через модуль logging — он умеет уровни важности, ротацию файлов и не теряется при перенаправлении вывода.
  • Забытый flush в стриминге. Если вывод перенаправлен в файл или пайп, данные могут «зависать» в буфере, пока их не наберётся достаточно. Для вывода в реальном времени нужен flush=True.
Частые ошибки при использовании print в Python: отладка кода

Часто задаваемые вопросы о функции print в Python

Что делает функция print() в Python?
print() выводит переданные ей данные — строки, числа, списки и другие объекты — в стандартный поток вывода, обычно это консоль или терминал. Перед выводом Python автоматически преобразует объекты в строку.
Как вывести несколько переменных в одной строке?
Передайте их через запятую: print(a, b, c). Python подставит между ними пробел (или другой разделитель через sep) и выведет всё одной строкой.
Чем f-строка отличается от print("текст", переменная)?
Аргументы print() дают готовый разделитель-пробел между значениями, а f-строка собирает одну строку вручную с полным контролем над форматированием — округлением чисел, выравниванием, вложенными выражениями внутри {}.
Как вывести print без перехода на новую строку?
Измените аргумент end: print("текст", end="") или, например, end=" ". По умолчанию end равен символу переноса строки.
Почему print не выводит данные сразу?
Вывод может задерживаться буферизацией потока — особенно при перенаправлении в файл или пайп. Добавьте flush=True, чтобы принудительно отправить данные немедленно.
Можно ли записать вывод print в файл вместо консоли?
Да, через аргумент file: print("текст", file=open('log.txt', 'a')) — передайте уже открытый файловый объект. Так же можно направить вывод в sys.stderr для ошибок.

Подытожим

Функция print в Python является одним из важнейших инструментов для вывода информации. Она поддерживает множество возможностей:

  • выводит один или несколько аргументов;
  • позволяет задавать разделители с помощью sep;
  • изменяет окончание вывода с помощью end;
  • направляет данные в файл или sys.stderr через file;
  • обеспечивает немедленный вывод благодаря flush;
  • интегрируется с вводом данных в Jupyter Notebook;
  • форматирует строки через f-строки или метод format.

Примеры использования print охватывают как простые учебные задачи, так и профессиональные проекты — от учебных скриптов до отладки продакшн-кода. Знание всех возможностей этой функции значительно упрощает разработку программ на Python.

Найдем лучшее решение вашей задачи

Дальше — практика

Больше услуг тут

Разработка медицинских приложений

UX/UI Дизайн

Бизнес аналитика

Обсудим ваш проект?

Соберём команду под вашу задачу и оценим проект за 2 дня — бесплатно.

Обсудить проект