標籤:

matlab調用python整理(1):調用.py文件

一個圖像處理項目前面都是用是matlab代碼實現的,後面用到了多重網格函數,我們知道python有集成的庫函數可以直接調用,但matlab必須自己寫,為了減少不必要的錯誤,肯定是庫函數比較保險(不能說自己懶),所以需要matlab調用python自定義函數。

首先,有人給出實例Matlab調用.py文件 - CSDN博客:

下面的例子闡明了如何通過使用Python模塊來調用python的方法,其中模塊中包含著下面的例子中所使用的函數。

這個例子解釋了如何在MATLAB中創建模塊。如果你使用Python的文本編輯器來編寫mymod.py,首先要確保這個模塊處理python搜索路徑中。

首先在MATLAB的Editor中創建一個文件,複製如下的命令並把這個文件保存為mymod.py。

# mymod.py"""Python module demonstrates passing MATLAB types to Python functions"""def search(words): """Return list of words containing son""" newlist = [w for w in words if son in w] return newlistdef theend(words): """Append The End to list of words""" words.append(The End) return words

在MATLAB的命令提示行中,輸入以下命令,來添加當前目錄到Python搜索路徑中。

if count(py.sys.path,) == 0 insert(py.sys.path,int32(0),);endCreate an input argument, a list of names, in MATLAB.N = py.list({Jones,Johnson,James});

在調用search函數時,在模塊名字和函數名字前面鍵入「py.」。

names = py.mymod.search(N);

其中,names中保存有py.list類型的值。原先的輸入N是沒有變化的。

如果之前在matlab上沒有調用過python代碼,可以跑上面的示例試一下。

如果出現Undefined variable "py" or function "py.command"錯誤,可以對照Undefined variable "py" or function "py.command"複查。cn.mathworks.com/help/m


推薦閱讀:

即將出版!《數學建模與數學實驗》書稿目錄
有沒有地理信息可視化的繪圖軟體?
學術論文中用什麼軟體可以繪製這樣的圖?
matlab畫圖坐標軸標註問題,畫紅圈的地方應該怎麼畫?
MATLAB更換界面顏色主題

TAG:MATLAB |