Linux 下 c++调用python程序示例,python函数的输入输出皆为数组形式
环境 Ubuntu python2.7 c++11
自己整理的代码,希望大家也能参考使用到
c++程序如下 mycpp.cpp:
#include <Python.h>
#include <iostream>
#include <vector>
int main(){
PyObject* pyName;
PyObject* pyModule;
PyObject* pyDict;
PyObject* pyFunc;
PyObject* pyArgs;
//初始化python解释器
Py_Initialize();
if (!Py_IsInitialized()) {
return false;
}
//开始使用PyRun_SimpleString 运行python语句, 设置被调用的python脚本的全路径
PyRun_SimpleString("import sys");
PyRun_SimpleString("sys.path.append('./')");
//导入python脚本文件testpy.py,此处的脚本文件名不需要加扩展名
pyName = PyString_FromString("mypy");
//加载python模型,作用类似python的 import
pyModule = PyImport_Import(pyName); if (!pyModule) {
printf("can't find mypy.py\n");
return false;
}
//取得模块接口字典信息
pyDict = PyModule_GetDict(pyModule);
if (!pyDict)