C++调用python脚本函数基本应用指南

  • C++编程语言的应用方式比较灵活,而且其支持性也比较广泛,比如可以调用C#的一些应用以及今天为大家介绍的C++调用python脚本函数的相关方法。下面就让我们一起来看看C++调用python脚本函数的实现方法。

    C++调用python脚本函数代码如下:

      
      
    1. Py_Initialize(); //初始化 python interpreter  
    2. PyObject *pName = PyString_FromString("test1"); // python脚本文件名  
    3. PyObject *pModule = PyImport_Import(pName); // import 脚本,返回pModule  
    4. // pModule指向这个脚本对象   
    5. if ( !pModule )  
    6. {  
    7. cout<<"Can't find the file!"<<endl;  
    8. return 0;  
    9. }  
    10. cout<<"Get the function in .py"<<endl;   
    11. PyObject *pDict = PyModule_GetDict(pModule); // 通过pModule得到dictionary  
    12. // 的指针pDict  
    13. PyObject *pFunc = PyDict_GetItemString(pDict,"Add"); 
      // 通过pDict得到你所需的  
    14. // function,此处"Add"为test1.py  
    15. // 的一个funciton object  
    16. PyObject *pParam = PyTuple_New(1); // 填写function所需要的参数  
    17. PyObject *pCurParam = PyInt_FromLong(10);  
    18. PyTuple_SET_ITEM(pParam,0,pCurParam);  
    19. PyObject *pAdded = PyObject_CallObject(pFunc,pParam);
      // 调用此function,并得到  
    20. // 返回值  
    21. int max = PyInt_AsLong(pAdded); // 将返回值转换为c++的数据类型  
    22. cout<<"after added ,the number is "<<max<<endl;  
    23. Py_XDECREF(pAdded); // 引用计数减一  
    24. Py_XDECREF(pCurParam);  
    25. Py_XDECREF(pParam);  
    26. // Py_XDECREF(pFunc);  
    27. // Py_XDECREF(pDict);  
    28. Py_XDECREF(pModule);  
    29. Py_XDECREF(pName);  
    30. Py_Finalize(); // 关闭   
    31. python interpreter 

    C++调用python脚本函数的相关方法就为大家介绍到这里。

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值