這次主要記錄在windows下嵌入 python 解釋器的過程,程序沒有多少,主要是頭文件與庫文件的提取。
程序平臺:windows10 64 bit、 Qt 5.5.1? MSVC? 2013 32 bit?? 、 python 3.7.4? 32 bit
在ubuntu和 windows 下使用 C/C++ 嵌入 Python 是有些不同的, ubuntu 下可以使用對應命令來獲取 python 配置信息, windows 下直接鏈接對應庫文件與頭文件即可。
通過對python解釋器的嵌入,我們可以自己做一個 python 編輯器,在內部可以定義自己的包;在運行時候 python 腳本的編寫就相當于一個隨時可變而又無需編譯的動態庫了。當然,有點還有很多,這種 C/C++ 嵌入腳本語言的應用在游戲上也十分常用。好了,下面簡單說下嵌入的流程。
1. Python 安裝包下載
我是直接在官網上下載的,Downloads-->>Python3.7.4。
2.? 提取庫文件與頭文件
安裝完的文件如下圖,其中 include 文件夾里面是頭文件, python37.dll 是我們所需要的動態鏈接庫,就像 linux 下的 .so 文件一樣。
3. 在Qt下嵌入 python
我使用的是Qt的控制臺程序,也就是 C++ 嵌入 python 。
① pro 文件中鏈接庫
Qt pro中文件如圖:
注意:雖然系統是64位的,但是 Qt 與 python 都是 32 位的
②在 C++ 程序中調用 python
在程序中調用python語句分以下幾個步驟
1> 包含頭文件
2> 初始化python解釋器
3> 使用C接口運行 python 語句
4> 調用完成后釋放資源。當然也可以再構造函數中初始化一次,在析構函數中再釋放資源。
4.? 程序運行結果
最后再說些其他的:在嵌入python中有以下幾個問題要考慮:
① python 腳本的靜態語法檢查與運行中錯誤的輸出
② python 輸出信息重定向到宿主程序
③如何停止、暫停 ( 鉤子函數 ) 正在運行的 python 腳本
④當運行 python 阻塞接口時,停止會怎樣?
⑤ python 腳本中有耗時操作,需要運行到線程或進程中
總結
以上所述是小編給大家介紹的Windows 嵌入python解釋器的過程,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
