C++中怎么調(diào)用Python腳本

C++中怎么調(diào)用Python腳本,相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。

成都創(chuàng)新互聯(lián)長(zhǎng)期為成百上千客戶(hù)提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開(kāi)放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為溧水企業(yè)提供專(zhuān)業(yè)的成都網(wǎng)站建設(shè)、做網(wǎng)站,溧水網(wǎng)站改版等技術(shù)服務(wù)。擁有10多年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開(kāi)發(fā)。

#test function   def add(a,b):       print "in python function add"       print "a = " + str(a)       print "b = " + str(b)       print "ret = " + str(a+b)       return     def foo(a):       print "in python function foo"       print "a = " + str(a)       print "ret = " + str(a * a)       return

把上面的PPython腳本代碼存為pytest.py接下來(lái)是c++ 的代碼:

#include "Python.h"   int main(int argc, char** argv)  {      // 初始化Python      //在使用Python系統(tǒng)前,必須使用Py_Initialize對(duì)其      //進(jìn)行初始化。它會(huì)載入Python的內(nèi)建模塊并添加系統(tǒng)路      //徑到模塊搜索路徑中。這個(gè)函數(shù)沒(méi)有返回值,檢查系統(tǒng)      //是否初始化成功需要使用Py_IsInitialized。       Py_Initialize();       // 檢查初始化是否成功      if ( !Py_IsInitialized() )       {          return -1;      }       // 添加當(dāng)前路徑      //把輸入的字符串作為Python代碼直接運(yùn)行,返回0      //表示成功,-1表示有錯(cuò)。大多時(shí)候錯(cuò)誤都是因?yàn)樽址?nbsp;     //中有語(yǔ)法錯(cuò)誤。      PyRun_SimpleString("import sys");      PyRun_SimpleString("sys.path.append('./')");      PyObject *pName,*pModule,*pDict,*pFunc,*pArgs;       // 載入名為pytest的腳本      pName = PyString_FromString("pytest");      pModule = PyImport_Import(pName);      if ( !pModule )      {          printf("can't find pytest.py");          getchar();          return -1;      }      pDict = PyModule_GetDict(pModule);      if ( !pDict )       {          return -1;      }       // 找出函數(shù)名為add的函數(shù)      pFunc = PyDict_GetItemString(pDict, "add");      if ( !pFunc || !PyCallable_Check(pFunc) )      {          printf("can't find function [add]");          getchar();          return -1;      }

看完上述內(nèi)容,你們掌握C++中怎么調(diào)用Python腳本的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!

當(dāng)前題目:C++中怎么調(diào)用Python腳本
網(wǎng)站URL:http://muchs.cn/article38/ippspp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、微信小程序、網(wǎng)站收錄網(wǎng)站設(shè)計(jì)公司、軟件開(kāi)發(fā)、云服務(wù)器

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名