Расширение и встраивание интерпретатора Python

Этот документ описывает, как писать модули на C или C++, чтобы расширить интерпретатор Python новыми модулями. Эти модули могут определять не только новые функции, но и новые типы объектов и их методы. Документ также описывает, как встроить интерпретатор Python в другое приложение, чтобы использовать его в качестве языка расширения. Наконец, в документе показано, как компилировать и компоновать модули расширения, чтобы они могли загружаться в интерпретатор динамически (во время выполнения), если базовая операционная система поддерживает эту возможность.

Этот документ предполагает наличие базовых знаний о Python. Неформальное введение в язык см. в разделе Самоучитель по Python. Справочник по языку Python дает более формальное определение языка. Стандартная библиотека Python документирует существующие типы объектов, функции и модули (как встроенные, так и написанные на Python), которые обеспечивают языку широкий спектр применения.

Подробное описание всего API Python/C можно найти в отдельном разделе Справочное руководство по API Python/C.

Создание расширений без использования сторонних инструментов

В этом разделе руководства рассказывается о создании расширений на C и C++ без помощи сторонних инструментов. Он предназначен в первую очередь для создателей этих инструментов, а не как рекомендуемый способ создания собственных расширений на C.

Встраивание среды выполнения CPython в более крупное приложение

Иногда вместо того, чтобы создавать расширение, которое запускается внутри интерпретатора Python как основное приложение, желательно встроить среду выполнения CPython в более крупное приложение. В этом разделе рассматриваются некоторые детали, связанные с успешным выполнением этой задачи.