Wie ruft man Python-Code aus C-Code auf?

Ich möchte ein großes C-Projekt mit einigen neuen Funktionen erweitern, aber ich möchte es wirklich in Python schreiben. Grundsätzlich möchte ich Python-Code aus C-Code aufrufen. Python-> C-Wrapper wie SWIG ermöglichen jedoch das OPPOSITE, dh das Schreiben von C-Modulen und das Aufrufen von C aus Python.

Ich denke über einen Ansatz mit IPC oder RPC nach (es macht mir nichts aus, mehrere Prozesse zu haben). Das heißt, meine pure-Python-Komponente wird in einem separaten Prozess (auf demselben Computer) ausgeführt und mein C-Projekt kommuniziert damit, indem es über einen Socket (oder eine Unix-Pipe) schreibt / liest. Meine Python-Komponente kann lesen / schreiben, um mit dem Socket zu kommunizieren. Ist das ein vernünftiger Ansatz? Gibt es was besseres Wie ein spezieller RPC-Mechanismus?

Vielen Dank für die Antwort bisher -Ich möchte mich jedoch auf IPC-basierte Ansätze konzentrieren, da ich mein Python-Programm in einem separaten Prozess als mein C-Programm haben möchte. Ich möchte keinen Python-Interpreter einbinden. Vielen Dank!

Antworten auf die Frage(8)

Ihre Antwort auf die Frage