版本 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);
返回一个浮点型
float d = 0.1f;
PyArg_P

本文详细介绍了如何在C++环境中调用Python脚本,包括初始化Python环境、导入模块、获取函数、传递参数及处理返回值等步骤,特别强调了参数格式和返回值类型转换的重要性。

1122

被折叠的 条评论
为什么被折叠?



