Colección de citas famosas - Diccionario de frases chinas - ¿Se puede intermodular Python con el lenguaje C?

¿Se puede intermodular Python con el lenguaje C?

Es absolutamente posible.

Porque Python en sí es una biblioteca C. El Python ejecutable que ves es solo un código auxiliar. Las entidades reales de Python se implementan en bibliotecas de enlaces dinámicos. En plataformas Windows, este archivo se encuentra en %systemroot% system32python27.dll. Del mismo modo, puedes llamar a Python en tu propio programa de la siguiente manera:

#includes

int great _ function _ from _ python(int a){

int res

PyObject *pModule, *pFunc

PyObject *pArgs, *pValue

/*Importar*/

p módulo = py Importar _ Importar(py cadena _ de cadena(" gran _ módulo "));

/* gran _ módulo gran _función*/

p func = py objeto _ GetAttrString(. módulo p, "gran _ función");

/*Parámetros de compilación*/

pArgs = py tuple _ New(1); , 0, PyInt _ de long(a));

/*Call*/

pValue = py object _ call object(p func, pArgs);

RES = PyInt _ as long(pValue);

Devuelve res

}