Печать нескольких строк в Python: основные техники

Раздел: Ввод-вывод -> Функция print

Основные способы многострочного вывода

Наиболее распространённый и читаемый способ вывести несколько строк в Python - использование тройных кавычек (''' или """). Такой синтаксис позволяет включать переносы строк прямо в код без дополнительных символов.

print('''Это первая строка
Это вторая строка
Это третья строка''')

Print set python (вывод множества в python)

Это первая строка
Это вторая строка
Это третья строка

Print python перевод (перевод строки в print python)

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

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

Лишние отступы, если строка кода имеет отступ. Например:

def greet():
    print('''Привет
    Мир''')

Python print отступ (вывод с отступами в python)

Привет
    Мир

Print random python (вывод случайного числа в python)

Второй ряд начинается с четырёх дополнительных пробелов. Решение - textwrap.dedent или форматирование строки.

Как вывести несколько строк через символ \n?

Можно вставить \n прямо в обычную строку. Это компактно, но менее наглядно при большом количестве строк.

print('Строка1\nСтрока2\nСтрока3')

Python print текст и переменная (вывод текста и переменной в python)

Строка1
Строка2
Строка3

Python how print (как выводить в python)

Если забыть удвоить обратную косую черту в строке (например, написать \n неправильно), Python может интерпретировать её как экранирование. Используйте raw-строки (r'...') для избегания:

print(r'Строка1\nСтрока2')

Python print несколько строк (многострочный вывод в python)

Строка1\nСтрока2

Print python синтаксис (синтаксис вывода в python)

Для корректного перевода строки raw-строки не подходят.

Как вывести несколько строк, вызывая print несколько раз?

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

print('Первая строка')
print('Вторая строка')
print('Третья строка')

Python echo print (аналог echo в python (print))

Первая строка
Вторая строка
Третья строка

Python console print (вывод в консоль в python)

Если нужно вывести всё одной строкой, измените end:

print('Часть1', end=' ')
print('Часть2')

Python вывод в 1 строку (вывод в одну строку в python)

Часть1 Часть2

Python print пробелы (вывод пробелов в print python)

Как объединить строки списка с переносом строки?

Метод join() собирает список строк в одну с заданным разделителем, например \n.

lines = ['Строка A', 'Строка B', 'Строка C']
print('\n'.join(lines))

для данных в python используется функция print (использование print для вывода данных)

Строка A
Строка B
Строка C

Module print python (модуль print в python (функция))

Это удобно для динамического формирования вывода.

Как вывести многострочную f-строку с форматированием?

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

name = 'Анна'
age = 25
print(f'''Имя: {name}
Возраст: {age}
Страна: Россия''')

оператор end в python (параметр end в функции print python)

Имя: Анна
Возраст: 25
Страна: Россия

перенос print python (перенос строки в print python)

Проблема с отступами решается так же через textwrap.dedent.

Как избежать лишних отступов при многострочном выводе внутри функции?

Модуль textwrap содержит функцию dedent, которая удаляет общие начальные пробелы.

import textwrap

def display():
    msg = textwrap.dedent('''\
        Первая строка
        Вторая строка
        Третья строка''')
    print(msg)

Python print map (печать map в python)

Первая строка
Вторая строка
Третья строка

Обратите внимание на обратную косую черту в конце первой строки - она убирает начальный перевод строки.

- Print result python (печать результата в python)
- Python print word (печать слова в python)
- Print str python (печать строк в python)

Расширенные примеры многострочного вывода

Ниже представлены более сложные сценарии, демонстрирующие гибкость Python при выводе нескольких строк.

1. Многострочный вывод таблицы с выравниванием

Используем f-строки с форматированием ширины полей для создания аккуратной таблицы.

Пример
headers = ['Имя', 'Возраст', 'Город']
rows = [
    ['Иван', 30, 'Москва'],
    ['Мария', 25, 'Санкт-Петербург'],
    ['Петр', 35, 'Казань']
]

# Формируем строки таблицы
table_lines = []
table_lines.append(' | '.join(f'{h:20}' for h in headers))
table_lines.append('-' * 65)
for row in rows:
    table_lines.append(' | '.join(f'{str(cell):20}' for cell in row))

print('\n'.join(table_lines))
Имя                 | Возраст             | Город
-----------------------------------------------------------------
Иван                | 30                  | Москва
Мария               | 25                  | Санкт-Петербург
Петр                | 35                  | Казань

Обратите внимание: для выравнивания по левому краю используется :20. Можно добавить ^ для центрирования.

2. Вывод многострочного JSON с отступами

Модуль json умеет форматировать вывод с отступами, что удобно для отладки.

Пример
import json

data = {
    'name': 'Анна',
    'age': 28,
    'hobbies': ['чтение', 'путешествия', 'фотография']
}

print(json.dumps(data, indent=4, ensure_ascii=False))
{
    "name": "Анна",
    "age": 28,
    "hobbies": [
        "чтение",
        "путешествия",
        "фотография"
    ]
}

Параметр ensure_ascii=False сохраняет кириллические символы.

3. Использование print с разделителем для многострочности

Можно передать несколько аргументов в print, а в качестве разделителя установить \n.

Пример
print('Раз', 'Два', 'Три', sep='\n')
Раз
Два
Три

Это компактная замена циклу по элементам.

4. Многострочный вывод с raw-строкой и esc-последовательностями

Иногда нужно вывести строку с обратными слэшами без их интерпретации. Комбинация raw-строки и тройных кавычек сохраняет все символы.

Пример
path = r'''C:\Users\Admin\
Documents\
File.txt'''
print(path)
C:\Users\Admin\
Documents\
File.txt

Обратите внимание: в результате \n не превращается в перевод строки, а выводится как два символа.

5. Вывод многострочного текста с использованием буфера sys.stdout.write

Для полного контроля можно напрямую писать в стандартный вывод, формируя строку с переносами.

Пример
import sys

text = 'Линия 1\nЛиния 2\nЛиния 3'
sys.stdout.write(text)  # без дополнительного перевода строки в конце
Линия 1
Линия 2
Линия 3

В отличие от print, write не добавляет \n автоматически.

6. Многострочный вывод с помощью генератора и join

Можно сгенерировать строки на лету и склеить их, что экономит память.

Пример
def lines_generator():
    for i in range(1, 5):
        yield f'Строка номер {i}'

print('\n'.join(lines_generator()))
Строка номер 1
Строка номер 2
Строка номер 3
Строка номер 4

Подходит для больших объёмов данных.

7. Вывод с использованием textwrap.fill для переноса длинных строк

Если одна строка слишком длинная, textwrap.fill разбивает её на несколько строк с заданной шириной.

Пример
import textwrap

long_text = 'Очень длинное предложение, которое необходимо разбить на несколько строк для улучшения читаемости вывода.'
wrapped = textwrap.fill(long_text, width=50)
print(wrapped)
Очень длинное предложение, которое необходимо
разбить на несколько строк для улучшения
читаемости вывода.

Полезно для логирования или терминальных приложений.

8. Комбинирование методов: многострочный вывод с условиями

Пример построения многострочного отчёта с использованием dedent и f-строк.

Пример
import textwrap

username = 'Admin'
actions = 42

report = textwrap.dedent(f'''\
    Отчёт пользователя {username}
    {'='*30}
    Количество действий: {actions}
    Статус: активно''').strip()

print(report)
Отчёт пользователя Admin
==============================
Количество действий: 42
Статус: активно

Метод strip() убирает лишние переносы в начале и конце.

Многострочный вывод в Python - comments

En
Python print несколько строк (python)