版本 Python 2.6
IDE Microsoft Visual Studio 2008
C++调用Python脚本
1.
Py_Initialize() 初始化Python,两者要对应。
Py_Finalize() 清理Python
2. 导入Python模块
PyObject *pModule = PyImport_ImportModule("testHello");
注意: 不要加上.py, VC环境不要用test的文件名。
3. 获取Python脚本内的函数
PyObject *pFunc = PyObject_GetAttrString(pModule, "Hello");
4. 调用Python函数, 无参数
PyEval_CallObject(pFunc, NULL);
5. 调用Python函数,传参数
PyObject *pArgs = Py_BuildValue("(s)", "thank you all the same");
注意: 传递的格式必须是tuple元组。也就是要加上()。否则就脚本异常。
6. 处理返回值
PyEval_CallObject调用后会返回。
PyObject *pResult = PyEval_CallObject(pFunc, pArgs);
返回一个整型,使用&。
int i = 0;
PyArg_Parse(pResult, "i", &i);
返回一个浮点型
flo