溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

Python script代碼在C++中的用法

發(fā)布時(shí)間:2021-08-20 21:25:57 來(lái)源:億速云 閱讀:209 作者:chen 欄目:編程語(yǔ)言

這篇文章主要講解了“Python script代碼在C++中的用法”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“Python script代碼在C++中的用法”吧!

Python script代碼需要和很多種語(yǔ)言混用。其中C++就是相當(dāng)多的一個(gè),下面我們就來(lái)看看如何才能在C++中順暢的使用Python script代碼。希望大家能在本文中找到自己的答案。

想要在c++ 中嵌入Python script 代碼, 除了自己寫(xiě)腳本引擎外, lua, python 都可以在c++ 中使用, 另外 MonoBind, AngelScript library 都是一些c++ script library, 可以嵌入到c++ 中使用 .

今天在c++ 中試著嵌入 Python script代碼 (示例代碼在 Python-2.5.2\Demo\embed\ 下)

#include <Python.h> int main(int argc, char *argv[])  {  // Py_NoSiteFlag = 1;  // Py_SetPythonHome("D:\\usr\\Python"); // PYTHONHOME  Py_Initialize();  PyRun_SimpleString("from time import time,ctime\n"  "print 'Today is',ctime(time())\n");  Py_Finalize();  return 0;  }

在運(yùn)行時(shí)可能會(huì)產(chǎn)生類(lèi)似 'import site' failed; use -v for traceback 的錯(cuò)誤, 原因是python 在import module 的時(shí)候的路徑問(wèn)題. 有3種方法可以解決(以前通過(guò)設(shè)置環(huán)境變量 PYTHONPATH 好像在2.5 已經(jīng)無(wú)效了).

0. 取消注釋 Py_NoSiteFlag = 1;

這個(gè)只是取消import site , 當(dāng)然如果在代碼中要import 啥的話(huà), 還是會(huì)出現(xiàn)錯(cuò)誤的.

a. 設(shè)置環(huán)境變量 PYTHONHOME = D:\usr\Python

b. 在調(diào)用 Py_Initialize 之前調(diào)用函數(shù)

Py_SetPythonHome("D:\\usr\\Python"); // 參數(shù)是python 的安裝目錄

感謝各位的閱讀,以上就是“Python script代碼在C++中的用法”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)Python script代碼在C++中的用法這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI