Задачи на print в Python: примеры и решения

Раздел: Основы Python -> Практические задачи с print

Основы работы с print

Функция print() в Python выводит переданные ей объекты в стандартный поток вывода (обычно на экран). Это одна из первых функций, с которой знакомится новичок. Рассмотрим её возможности на примерах.

Как вывести несколько значений через пробел?

Самый простой способ - передать несколько аргументов:

print('Привет', 'мир', 'Python')

Print я изучаю python (вывод 'я изучаю python')

Результат:

Привет мир Python

Print python is the best (вывод фразы 'python is the best')

По умолчанию print разделяет аргументы пробелом. Это удобно для быстрого вывода.

Как изменить разделитель между выводимыми значениями?

Используйте параметр sep:

print('a', 'b', 'c', sep='-')

задачи на print python (задачи на использование print в python)

Результат:

a-b-c

Параметр sep позволяет задать любую строку между элементами.

Типичная ошибка:

Попытка использовать sep без аргументов, кроме первого - он применяется только если передано несколько объектов.

Как предотвратить перевод строки после вывода?

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

print('Лес', end=' ')
print('поле')

Результат:

Лес поле

Ошибка новичков:

Забыть указать end='' и получить неожиданный перенос строки.

Как вывести текст без пробелов между символами?

Установите пустой разделитель:

print(*'Python', sep='')

Результат:

Python

Звездочка распаковывает строку на отдельные символы, а sep='' убирает пробелы.

Как вывести данные в одну строку с фиксированным форматированием?

Используйте f-строки:

name = 'Анна'
age = 25
print(f'Меня зовут {name}, мне {age} лет.')

Результат:

Меня зовут Анна, мне 25 лет.

F-строки удобны для подстановки переменных и выражений прямо внутри строки.

Распространенная проблема:

Забыть префикс f перед строкой - тогда переменные не будут подставлены.

Как вывести результат в файл?

Укажите параметр file:

with open('out.txt', 'w') as f:
    print('Запись в файл', file=f)

Результат - строка появится в файле out.txt.

Типичная ошибка:

Забыть открыть файл в нужном режиме (w для записи, a для добавления).

Как вывести отладочную информацию с типом объекта?

Используйте repr или флаг !r в f-строке:

s = 'строка'
print(repr(s))
print(f'{s!r}')

Результат:

'строка'
'строка'

Полезно для отладки, чтобы видеть точное представление строки (с кавычками).

Расширенные примеры работы с print

Вывод таблицы с выравниванием

Форматирование с помощью f-строк и ширины полей:

Пример
header = ['Имя', 'Возраст', 'Город']
data = [
    ['Анна', 25, 'Москва'],
    ['Иван', 30, 'Санкт-Петербург'],
    ['Ольга', 22, 'Казань']
]

for row in [header] + data:
    print(f'{row[0]:10} {row[1]:5} {row[2]:15}')

Результат:

Имя        Возраст Город          
Анна          25 Москва         
Иван          30 Санкт-Петербург
Ольга         22 Казань         

Параметры выравнивания: :< (влево), :> (вправо), :^ (центр).

Вывод прогресс-бара в одной строке

Обновление строки с помощью \r и flush=True:

Пример
import time

for i in range(10):
    print(f'\rЗагрузка: {"█" * (i+1)}{" " * (9 - i)} {i+1}0%', end='', flush=True)
    time.sleep(0.2)
print()  # перевод строки после завершения

Результат (анимация):

Загрузка: █████████ 100%

Важно использовать end='' и flush=True, чтобы строка обновлялась на месте.

Вывод с escape-последовательностями

Табуляция, переносы, цветные символы (ANSI) - всё это можно вывести через print:

Пример
print('Первая строка\nВторая строка')
print('Колонка1\tКолонка2')
# Цветной вывод (работает в большинстве терминалов)
print('\033[91mКрасный текст\033[0m')

Результат:

Первая строка
Вторая строка
Колонка1	Колонка2
Красный текст (цветной)

Последовательности \033[...m задают цвет.

Вывод нескольких значений с разным форматированием

Использование .format() для сложных шаблонов:

Пример
data = {'name': 'Максим', 'score': 95.678}
print('{name} набрал {score:.1f} баллов'.format(**data))

Результат:

Максим набрал 95.7 баллов

Метод .format() позволяет задать точность, тип и другие опции.

Вывод всего содержимого списка в столбик

Пример
items = ['яблоко', 'банан', 'вишня']
print(*items, sep='\n')

Результат:

яблоко
банан
вишня

Распаковка списка с разделителем - лаконичный способ.

Вывод с использованием sys.stdout.write

Для полного контроля над выводом:

Пример
import sys
sys.stdout.write('Без переноса строки')
sys.stdout.flush()

Результат: строка выводится без автоматического перевода строки. Аналог print(end='').

Сравнение: print добавляет новую строку по умолчанию, sys.stdout.write - нет.

Задачи на использование print в Python - comments

En
задачи на print python (python)