
Скрипты Python обычно используются в рабочих процессах разработки, конвейерах документации, учебных курсах и академической среде. Преобразование файлов Python (.py) в PDF обеспечивает единообразное форматирование, улучшает читаемость при распространении и предоставляет нередактируемую версию вашего кода, подходящую для архивирования, печати или публикации.
В этом руководстве объясняется каждый практический метод преобразования кода Python в PDF, включая онлайн-инструменты, рабочие процессы печати в PDF в IDE, автоматизированные преобразования с помощью Python с подсветкой синтаксиса или без нее, а также решения для пакетной обработки. Каждый метод включает подробные шаги, технические примечания и руководство по установке, где это необходимо.
Обзор:
- Онлайн-конвертеры Python в PDF
- Рабочие процессы печати в PDF в IDE
- Автоматизированное преобразование Python в PDF с помощью Python
- Сравнение методов
- Часто задаваемые вопросы
1. Онлайн-конвертеры Python в PDF
Онлайн-инструменты предлагают самый быстрый способ преобразовать файл .py в PDF без настройки программного обеспечения. Они удобны для пользователей, которым просто нужна читаемая PDF-версия своего кода.
Как работают онлайн-конвертеры
После загрузки файла .py сервис обрабатывает содержимое и выводит PDF-файл, сохраняющий отступы кода и базовое форматирование. Некоторые платформы предоставляют дополнительные настройки, такие как размер шрифта, поля страницы и нумерация строк.
Пример: Преобразование кода Python в PDF с помощью CodeConvert AI
Шаги
-
Перейдите на CodeConvert AI (платформа для преобразования кода в браузере).
-
Загрузите свой файл .py или вставьте код в редактор.
-
Выберите Создать PDF, чтобы сгенерировать PDF-документ.

-
Распечатайте документ как PDF-файл во всплывающем меню.

Преимущества
- Не требуется установка или настройка.
- Работает на разных операционных системах и устройствах.
- Подходит для быстрых преобразований и небольших потребностей.
Ограничения
- Избегайте загрузки конфиденциальных или проприетарных скриптов.
- Параметры форматирования зависят от сервиса.
- Качество подсветки синтаксиса варьируется на разных платформах.
2. Преобразование Python в PDF через «Печать в PDF» в IDE
Большинство редакторов для разработки, включая VS Code, PyCharm, Sublime Text и Notepad++, поддерживают экспорт файлов в PDF через подсистему печати операционной системы.
Как это работает
При печати IDE отображает код, используя свой внутренний движок подсветки синтаксиса, и передает стилизованный вывод в ОС, которая затем генерирует PDF.
Шаги (пример для PyCharm)
-
Откройте свой файл Python.
-
Перейдите в Файл → Печать.

-
При необходимости настройте параметры страницы (поля, ориентация, масштабирование).

-
Выберите Microsoft Print to PDF в качестве принтера и сохраните PDF-документ.

Преимущества
- Чистое, читаемое форматирование.
- Подсветка синтаксиса обычно сохраняется.
- Не требуются дополнительные библиотеки.
Ограничения
- Минимальный контроль над переносом строк или макетом.
- Не предназначено для пакетных рабочих процессов.
- Качество вывода зависит от темы IDE.
3. Преобразование PY в PDF на основе скриптов Python (автоматизированное и настраиваемое)
Инструменты на основе Python предоставляют гибкие способы преобразования файлов .py в PDF, поддерживая автоматизированные конвейеры, единообразное форматирование и дополнительную подсветку синтаксиса.
Перед использованием следующих методов установите необходимые компоненты.
Необходимые пакеты
Free Spire.Doc for Python – обрабатывает экспорт в PDF
pip install spire.doc.free
Pygments – генерирует HTML с подсветкой синтаксиса
pip install pygments
3.1 Метод А: Прямое преобразование текста в PDF (без подсветки синтаксиса)
Этот метод считывает файл .py как обычный текст и записывает его в PDF. Он подходит для простого экспорта, снимков документации и внутреннего архивирования, которые могут не требовать подсветки синтаксиса.
Пример кода
from spire.doc import Document, FileFormat, BreakType, Color, LineSpacingRule, LineNumberingRestartMode, TextRange
# Прочитать код Python как строку
with open("Python.py", "r", encoding="utf-8") as f:
python_code = f.read()
# Создать новый документ
doc = Document()
# Добавить код Python в документ
section = doc.AddSection()
paragraph = section.AddParagraph()
for line_number, line in enumerate(python_code.split("\n")):
tr = paragraph.AppendText(line)
# Установить формат символов
tr.CharacterFormat.FontName = "Consolas"
tr.CharacterFormat.FontSize = 10.0
if line_number < len(python_code.split("\n")) - 1:
paragraph.AppendBreak(BreakType.LineBreak)
# Дополнительные настройки
# Установить цвет фона и межстрочный интервал
paragraph.Format.BackColor = Color.get_LightGray()
paragraph.Format.LineSpacingRule = LineSpacingRule.Multiple
paragraph.Format.LineSpacing = 12.0 # 12pt означает одинарный интервал
# Установить нумерацию строк
section.PageSetup.LineNumberingStartValue = 1
section.PageSetup.LineNumberingStep = 1
section.PageSetup.LineNumberingRestartMode = LineNumberingRestartMode.RestartPage
section.PageSetup.LineNumberingDistanceFromText = 10.0
# Сохранить документ в файл PDF
doc.SaveToFile("output/Python-PDF.docx", FileFormat.Docx)
doc.SaveToFile("output/Python-PDF.pdf", FileFormat.PDF)
Как это работает
Этот метод вставляет код Python построчно с помощью AppendText(), добавляет разрывы строк с помощью AppendBreak() и экспортирует окончательный документ через SaveToFile().
Ниже показан результат применения этого метода:

Для получения более подробной информации о настройке и вставке текста в PDF-документ см. наше руководство по добавлению текста в PDF-документы с помощью Python.
3.2 Метод Б: PDF с подсветкой синтаксиса (HTML → PDF)
При создании учебных пособий или читаемой документации подсветка синтаксиса помогает различать ключевые слова и улучшает общую ясность. Этот метод использует Pygments для генерации HTML со встроенными стилями, а затем вставляет HTML в документ.
Пример кода
from spire.doc import Document, FileFormat, ParagraphStyle, IParagraphStyle
from pygments import highlight
from pygments.lexers import PythonLexer
from pygments.formatters import HtmlFormatter
def py_to_inline_html(py_file_path):
with open(py_file_path, "r", encoding="utf-8") as f:
code = f.read()
formatter = HtmlFormatter(noclasses=True, linenostart=1, linenos='inline') # Номера строк необязательны
inline_html = highlight(code, PythonLexer(), formatter)
return inline_html
html_result = py_to_inline_html("Python.py")
doc = Document()
section = doc.AddSection()
paragraph = section.AddParagraph()
# Вставить отформатированный HTML
paragraph.AppendHTML(html_result)
doc.SaveToFile("output/Python-PDF-Highlighted.pdf", FileFormat.PDF)
Как это работает
Pygments сначала форматирует код как HTML на основе встроенного CSS. HTML добавляется через AppendHTML(), а готовый документ экспортируется с помощью SaveToFile().
Ниже приведен визуальный результат, сгенерированный этим методом стилизованного HTML:

3.3 Пакетное преобразование (рабочие процессы «Папка в PDF»)
Для одновременного преобразования нескольких файлов .py вам понадобится всего лишь короткий цикл для обработки всех файлов в каталоге и сохранения их в формате PDF.
Пример кода (минимальная пакетная обработка)
import os
input_folder = "scripts"
output_folder = "pdf-output"
os.makedirs(output_folder, exist_ok=True)
for file in os.listdir(input_folder):
if file.endswith(".py"):
py_path = os.path.join(input_folder, file)
pdf_path = os.path.join(output_folder, file.replace(".py", ".pdf"))
# Вызовите здесь выбранную вами функцию преобразования
convert_py_to_pdf(py_path, pdf_path)
Примечания
- Повторно использует функцию преобразования, определенную ранее.
- Автоматически сохраняет каждый файл .py как PDF с тем же именем файла.
- Работает как для методов с обычным текстом, так и с подсветкой синтаксиса.
Вы также можете обратиться к нашему руководству «Прямое преобразование HTML в PDF на Python», чтобы узнать больше.
4. Сравнительная таблица: выбор правильного метода преобразования
| Метод | Преимущества | Недостатки | Лучший вариант использования |
|---|---|---|---|
| Онлайн-конвертеры | Быстро, без установки | Проблемы с конфиденциальностью, ограниченное форматирование | Небольшие, неконфиденциальные файлы |
| Печать в PDF в IDE | Просто, сохраняет синтаксис (часто) | Нет автоматизации | Преобразование одного файла |
| Скрипт Python (прямой/HTML) | Автоматизация, пакетная обработка, настройка | Требуются знания в области написания скриптов | Документация, учебные пособия, конвейеры |
5. Лучшие практики для создания четкого и читаемого PDF-кода
Следуйте этим практикам, чтобы ваши PDF-файлы с кодом Python были легко читаемыми, хорошо отформатированными и выглядели профессионально.
Используйте моноширинный шрифт
Моноширинные шрифты сохраняют отступы и выравнивание, что облегчает чтение и отладку кода.
Управляйте длинными строками и переносом
Включите перенос строк или настройте поля страницы, чтобы предотвратить горизонтальную прокрутку и обрезку строк кода.
Поддерживайте единообразное форматирование
Сохраняйте единообразие размеров шрифтов, цветов, интервалов и макета страниц в нескольких PDF-файлах, особенно при пакетной обработке.
Сохраняйте логические блоки кода
Избегайте разделения функций, циклов или многострочных операторов между страницами, чтобы сохранить читаемость и структуру.
Организуйте именование файлов и структуру папок
Используйте систематические имена файлов и организацию папок для пакетного экспорта, автоматизированной документации или архивов проектов.
6. Заключение
Преобразование файлов Python (.py) в PDF обеспечивает надежный способ сохранения форматирования кода, улучшения читаемости и создания документов для совместного использования или архивирования. Будь то для документации, учебных пособий, образовательных целей или личного использования, эти методы позволяют разработчикам, командам и отдельным пользователям создавать единообразные и профессионально выглядящие PDF-файлы из своего исходного кода Python.
7. Часто задаваемые вопросы о преобразовании файлов Python в PDF
Ниже приведены некоторые распространенные вопросы, которые задают разработчики, преподаватели и студенты о преобразовании файлов Python в PDF. Эти ответы основаны на методах, описанных в этом руководстве.
Как превратить файл с кодом Python (.py) в PDF?
Вы можете преобразовать файл Python .py в PDF с помощью онлайн-конвертеров, таких как CodeConvert AI, функций печати в PDF в IDE или скриптов на основе Python с Spire.Doc для автоматизированной и пакетной обработки. Выберите метод в зависимости от вашего рабочего процесса, потребностей в форматировании и необходимости подсветки синтаксиса.
Как я могу преобразовать блокнот Python Jupyter в PDF?
Для блокнотов Jupyter (.ipynb) вы можете использовать встроенную опцию Файл → Скачать как → PDF, если установлен LaTeX, или сначала экспортировать блокнот в скрипт .py, а затем применить методы преобразования Python в PDF, описанные в этом руководстве.
Как убедиться, что подсветка синтаксиса сохранена в PDF?
Чтобы сохранить цвета и форматирование синтаксиса, преобразуйте код в HTML со встроенными стилями CSS с помощью Pygments, а затем добавьте его в PDF-документ с помощью AppendHTML(). Это сохраняет ключевые слова, комментарии и отступы для более четкого и профессионально выглядящего вывода.
Как преобразовать текстовый файл в PDF с помощью Python в Windows?
В Windows вы можете использовать бесплатные библиотеки Python, такие как Spire.Doc, чтобы прочитать файл .txt или .py, записать его в PDF и при необходимости стилизовать. Печать в PDF в IDE — это еще один вариант для преобразования одного файла без написания кода. Пакетные скрипты могут автоматизировать обработку нескольких файлов при сохранении единообразного форматирования.