利用pybind生成python的C 擴充套件模組

2021-08-28 23:37:25 字數 668 閱讀 5996

pybind用起來比較方便,**量也比較少。首先用pip 安裝pybind。

然後編寫c++**,以c++的加法拓展為例:

#include namespace py = pybind11;

int add(int i, int j)

pybind11_plugin(example)

需要在開頭include ,在路徑d:\programfiles\python36\include\pybind11下,可以找到相應的標頭檔案。

接著進行以下步驟進行編譯,需要安裝vs。

以下命令在vs 2017 x86 本機命令提示工具中輸入

cl example.cpp /i "d:\learningpython\3_c++pythonmodel\pybind11-master\include" /i "d:\programfiles\python36\include" /ld /fe:example.pyd /link/libpath:"d:\programfiles\python36\libs\"

命令引數解釋:

/i 新增cpp檔案中標頭檔案的搜尋路徑

/ld 生成動態庫檔案

/fe 輸出檔案的路徑及名稱

/link/libpath 附加的

python利用pybind11呼叫PCL點雲庫

2019年7月9日14 31 13 完成了乙個簡單的小例子,python生成點雲資料,利用pybind11傳給pcl顯示。ubuntu 16.04 anaconda3 python3.6 pcl 1.8 pybind11 效果圖如下 搞深度估計,一直需要點雲庫pcl的python介面,未來還需要用到...

利用pyinstaller打包python3程式

這裡我解壓到了d盤 接著進入win系統的cmd介面,在cmd狀態下進入pyinstaller檔案。然後輸入 最好以管理員身份執行 這裡是在python裡安裝pyinstaller模組 python setup.py install 必須確保你的機器上安裝了pywin32模組,如果沒有請自行安裝。以管...

利用mysql生成UUID

在日常的開發環境中,我們經常使用uuid來當做主鍵,一般我們使用的都是現成的工具類,但其實mysql就可以生成uuid。mysql生成uuid是使用的uuid 函式,如下圖 但是生成的這個uuid中間是有 隔開的,我們一般是不要的,所以需要將 去掉。這裡我們使用replace 函式來實現去掉 這樣,...