저는 애완 동물 프로젝트에 파이썬을 삽입하려고합니다. 나는 다음과 같은 코드를 내 문제를 감소 : (Python C API) PyRun_StringFlags에 내장 함수가 없습니다.
#include <Python.h>
#include "iostream"
int main(int argc, char *argv[])
{
Py_Initialize();
PyObject *globals = Py_BuildValue("{}");
PyObject *locals = Py_BuildValue("{}");
PyObject *string_result = PyRun_StringFlags(
"a=5\n"
"s='hello'\n"
"d=dict()\n"
,
Py_file_input, globals, locals, NULL);
if (PyErr_Occurred()) {PyErr_Print();PyErr_Clear();return 1;}
return 0;
}
가 (. 내가 참조를 청소하고 있지 않다 알고이 예입니다.)이
c++ $(python-config --includes) $(python-config --libs) test.cpp -o test
로 컴파일 할 수 있습니다
나는 그것을 실행하는 경우
나는 다음과 같은 오류가 발생합니다 :
$ ./test
Traceback (most recent call last):
File "<string>", line 3, in <module>
NameError: name 'dict' is not defined
이 내장 기능이로드되지 않습니다 보인다. 나는 또한 import
수 없습니다. 그 __import__
가 누락되었습니다. 누락 된 모듈 또는 누락 된 항목을로드하려면 어떻게합니까?
감사합니다.
고마워요! 'PyEval_GetBuiltins'은 내가 필요한 것입니다. 나는 그걸 찾는 법을 알지 못했습니다. – Simon