Ampliación e incrustación del intérprete de Python

Este documento describe cómo escribir módulos en C o C++ para extender el intérprete de Python con nuevos módulos. Esos módulos no solo pueden definir nuevas funciones sino también nuevos tipos de objetos y sus métodos. El documento también describe cómo incrustar el intérprete de Python en otra aplicación, para usarlo como un lenguaje de extensión. Finalmente, muestra cómo compilar y vincular módulos de extensión para que puedan cargarse dinámicamente (en tiempo de ejecución) en el intérprete, si el sistema operativo subyacente admite esta característica.

This document assumes basic knowledge about C and Python. For an informal introduction to Python, see El tutorial de Python. Referencia del Lenguaje Python gives a more formal definition of the language. Python built-ins reference documents the built-in functions and object types, and The Python standard library documents the modules (both built-in and written in Python) that give the language its wide application range.

Para obtener una descripción detallada de toda la API de Python/C, consulte el apartado separado Python/C API reference manual.

Crear extensiones sin herramientas de terceros

Esta sección de la guía cubre la creación de extensiones C y C++ sin la ayuda de herramientas de terceros. Está destinado principalmente a los creadores de esas herramientas, en lugar de ser una forma recomendada de crear sus propias extensiones C.

Ver también

PEP 489 – Multi-phase extension module initialization

Incrustar el tiempo de ejecución de CPython en una aplicación más grande

A veces, en lugar de crear una extensión que se ejecute dentro del intérprete de Python como la aplicación principal, es conveniente incorporar el tiempo de ejecución de CPython dentro de una aplicación más grande. Esta sección cubre algunos de los detalles involucrados en hacerlo con éxito.