嵌入Python | 調用Python模塊中有參數的函數
阿新 • • 發佈:2018-05-15
ans 版本 元組 docs 並且 building img weight target
,即需將主程序的數據轉換為元組。
主程序源代碼:
開發環境
Python版本:3.6.4 (32-bit)
編輯器:Visual Studio Code
C++環境:Visual Studio 2013
需求說明
前一篇《在C++中嵌入Python|調用無參數的函數》中我們成功的在C++主程序中嵌入了Python,並且調用了Python模塊中的一個無參數的函數。這一篇我們將在此基礎上,實現在主程序中調用Python模塊中有參數的函數,使兩者互動起來
。
0 準備say_hi.py模塊
在say_hi.py中增加含有一個參數的函數prt_hello和含有兩個參數的函數zl_add,完整代碼如下圖:
1 主程序中調用含有一個參數的函數
將主程序中的數據作為參數直接傳入Python模塊中函數,肯定是不行的,這中間需要進行轉換。參數要以tuple元組的形式傳入
主程序源代碼:
主程序運行結果:
2 主程序中調用含有兩個參數的函數
通過如下示例介紹一下兩種構造參數元組的方法:
主程序源代碼:
主程序運行結果:
其它情況下的參數類似以上的處理方法,詳細參考官方文檔:https://docs.python.org/3/c-api/arg.html#building-values
3 下篇預告
- 在主程序中對Python模塊中
函數的返回值
加以解析 - 總結
Py_BuildValue
的用法
嵌入Python | 調用Python模塊中有參數的函數