Extension et intégration de l’interpréteur Python

Ce document décrit comment écrire des modules en C ou C++ pour étendre l’interpréteur Python à de nouveaux modules. En plus de définir de nouvelles fonctions, ces modules peuvent définir de nouveaux types d’objets ainsi que leur méthodes. Ce document explique aussi comment intégrer l’interpréteur Python dans une autre application, pour être utilisé comme langage d’extension. Enfin, ce document montre comment compiler et lier les modules d’extension pour qu’ils puissent être chargés dynamiquement (à l’exécution) dans l’interpréteur, si le système d’exploitation sous-jacent supporte cette fonctionnalité.

Ce document présuppose que vous avez des connaissances de base sur Python. Pour une introduction informelle du langage, voyez Le tutoriel Python. La référence du Langage Python donne une définition plus formelle du langage. La Bibliothèque Standard documente les objets types, fonctions et modules existants (tous intégrés et écrits en Python) qui donnent au langage sa large gamme d’applications.

Pour une description dans sa totalité de l’API Python/C, voir Manuel de Référence de l’API Python/c.

Intégrer l’interpréteur CPython dans une plus grande application

Parfois, plutôt que de créer une extension qui s’exécute dans l’interpréteur Python comme application principale, il est préférable d’intégrer l’interpréteur Python dans une application plus large. Cette section donne quelques informations nécessaires au succès de cette opération.