Erweiterung und Einbettung des Python-Interpreters

Dieses Dokument beschreibt, wie Module in C oder C++ geschrieben werden, um den Python-Interpreter mit neuen Modulen zu erweitern. Diese Module können nicht nur neue Funktionen, sondern auch neue Objekttypen und deren Methoden definieren. Das Dokument beschreibt auch, wie der Python-Interpreter in eine andere Anwendung eingebettet wird, um als Skriptsprache verwendet zu werden. Schließlich wird gezeigt, wie Erweiterungsmodule kompiliert und verknüpft werden, damit sie dynamisch (zur Laufzeit) in den Interpreter geladen werden können, falls das zugrunde liegende Betriebssystem dies unterstützt.

Dieses Dokument setzt grundlegende Kenntnisse über Python voraus. Eine informelle Einführung in die Sprache finden Sie im Python-Tutorial. Die Python-Sprachreferenz bietet eine formellere Definition der Sprache. Die Python-Standardbibliothek dokumentiert die vorhandenen Objekttypen, Funktionen und Module (sowohl integrierte als auch in Python geschriebene), die der Sprache ihren breiten Anwendungsbereich verleihen.

Eine detaillierte Beschreibung der gesamten Python/C-API finden Sie im separaten Python/C API Referenzhandbuch.

Erstellen von Erweiterungen ohne Drittanbieter-Tools

Dieser Abschnitt der Anleitung behandelt die Erstellung von C- und C++-Erweiterungen ohne Hilfe von Drittanbieter-Tools. Er richtet sich in erster Linie an die Entwickler dieser Tools und nicht als empfohlener Weg, eigene C-Erweiterungen zu erstellen.

Siehe auch

PEP 489 – Mehrphasen-Initialisierung von Erweiterungsmodulen

Einbetten der CPython-Laufzeitumgebung in eine größere Anwendung

Manchmal ist es wünschenswert, anstatt eine Erweiterung zu erstellen, die innerhalb des Python-Interpreters als Hauptanwendung ausgeführt wird, die CPython-Laufzeitumgebung in eine größere Anwendung einzubetten. Dieser Abschnitt behandelt einige Details, die damit verbunden sind, dies erfolgreich zu tun.