前言
python是很方便的語言, 型態鬆散, 語法自由, 直譯式語言, 用來測試一些概念想法非常方便, 不用頻繁的在編譯、執行、debug的無限循環中浪費時間。
因為工作上的需求, 需要用opencv做影像處理。 雖然c++下也有opencv可使用, 但是c++的資料結構上比較囉嗦, 所以我是在python環境下呼叫opencv進行try&error。待python下完成任務後, 從c++呼叫python, 將結果回傳。
Visual Studo 2022
我是在Visual Studio 2022呼叫Anaconda下的Python, 假設Anaconda是安裝在
C:\Users\asus\anaconda3 這個目錄下。
Visual Studo 2022裡需要設定的有
- 組態屬性>VC++目錄>包含目錄(Include Directory),
增加 C:\Users\asus\anaconda3\include - 組態屬性>VC++目錄>程式庫目錄(Lib Directory),
增加C:\Users\asus\anaconda3\libs
此時執行測試用的最簡單範例:
#include "Python.h"int main(){Py_Initialize(); //## 初始化PyRun_SimpleString("print ('hello')");Py_Finalize(); //## 釋放資源}
應該會得到如下結果
只要在 控制台>系統>進階系統設定>環境變數, 新增一個變數(在使用者變數或系統變數皆可):
PYTHONHOME = C:\Users\asus\anaconda3\ 即可(或指向你的python安裝目錄)
PYTHONHOME = C:\Users\asus\anaconda3\ 即可(或指向你的python安裝目錄)
再一次執行測試範例: