2.py
def data():
da=range(1,100);
return da
#print data()
2.cpp
#include <iostream>
#include <Python.h>
using namespace std;
int main(int argc, char* argv[])
{
//printf("pass\n");
Py_Initialize();
PyRun_SimpleString("import sys");
PyRun_SimpleString("sys.path.append('./')"); //dang qian lu jing
PyObject *pModule=PyImport_ImportModule("2");
PyObject *pFunc=PyObject_GetAttrString(pModule,"data");
PyObject *FuncValue=PyEval_CallObject(pFunc,NULL);
int a[99];
int LongList=PyList_Size(FuncValue);
for(int i=0;i<LongList;i++)
{
PyObject *ListItem=PyList_GetItem(FuncValue,i);
a[i]=PyInt_AsLong(ListItem);
}
for(int j=0;j<99;j++)
{
cout<<a[j]<<endl;
}
Py_Finalize();
}