Доброго всем времени суток! Хочу попробовать встроить в свое приложение возможность выполнения скриптов на Python. Возникла проблема с импортом собственных модулей. Например, есть два файла main.cpp и script.py в одном каталоге.
script.py:
def func:
print "Hello World"
main.cpp:
#include <Python.h>
int main()
{
PyObject *pname, *pmodule, *pfunc;
Py_Initialize();
PyRun_SimpleString("import sys");
PyRun_SimpleString("sys.path.append('.')");
pname = PyString_FromString("script");
pmodule = PyImport_Import(pname);
if (pmodule) {
pfunc = PyObject_GetAttrString(pmodule, "func");
PyObject_CallObject(pfunc, NULL);
}
Py_Finalize();
return 0;
}
При выполнении программы функция PyImport_Import() возвращает 0, т.е. модуль не импортируется. Модули самого Python, например sys или os, импортируются нормально. Способ с включением текущего каталога в sys.path подсказал гугл, но он также не помогает.