python如何調用matlab代碼,有哪些方式呢?


這裡簡單介紹一下吧,目前有2種簡單的方式,一種是安裝mlab模塊,一種是使用matlab自帶的python API接口,這2種方式都可以完成matlab代碼的調用,下面我簡單介紹一下這2種方式,實驗環境win10+python2.7+pycharm5.0,以matlab R2017a為例,主要內容如下:

這裡為了方便說明調用過程,我新建了一個test.m文件,裡面主要是一個測試函數test,截圖如下,非常簡單,後面的實驗都是調用這個test函數:

mlab模塊

這是早期python調用matlab的一種方式,比較簡單,目前只支持python2,不支持python3,下面我簡單介紹一下這種方式:

1.首先,安裝mlab模塊,這個直接在cmd窗口輸入命令“pip install malb”就行,如下,非常簡單:

2.編寫完成後,我們就可以直接編寫代碼進行調用了,測試代碼如下,非常簡單,這裡主要指明m文件所在的目錄,然後直接調用test函數就行:

點擊運行這個程序,就會得到調用test函數返回的結果值,如下:

API接口

也就是matlab自帶的Engine API for python,一個python源碼安裝包,直接安裝完成後,就可以調用matlab代碼了,目前,這種方式支持的python版本主要是python2.7、python3.4和python3.5,下面我簡單介紹一下這種方式:

1.首先,安裝Engine API for python,這個直接在matlab安裝目錄下找就行,主要在engines目錄中,如下,有2個API接口,一種是java,一種是python:

這裡我們選擇python,點擊進去,一個源碼包:

打開cmd窗口,切換到這個目錄,然後直接運行命令“python setup.py install”安裝就行,如下:

2.安裝完成後,我們就可以直接編寫代碼調用matlab函數了,測試代碼如下,也非常簡單,和m文件在放在一個目錄下:

點擊運行這個程序,就能得到調用test函數返回的結果,如下:

至此,我們就完成了python調用matlab的2種方式。總的來說,這2種方式都非常簡單,只要你熟悉一下上面的代碼,很快就能掌握的,當然,你也可以先編譯為dll文件,然後再調用也可以,網上也有相關資料和教程,感興趣的話,可以搜一下,希望以上分享的內容能對你有所幫助吧,也歡迎大家評論、留言。


小小猿愛嘻嘻


MATLAB可與許多編程語言(C、C++、Java、Python)靈活雙向集成,包括 Python。這大大方便了不同編程語言工程師相互使用。

Python可以通過MATLAB Python API 引擎來調用:


Python 調用 MATLAB API 方法:

1. 安裝Python 的 MATLAB 引擎 API:

Windows 系統中 :

cd "matlabroot\\extern\\engines\\python"

python setup.py install

Mac 或 Linux 系統:

cd "matlabroot/extern/engines/python"

python setup.py install

2. 調用實例:

啟動用於 Python 的 MATLAB 引擎

import matlab.engine

eng = matlab.engine.start_matlab()

停止引擎

eng.quit()

通過 Python 調用 MATLAB 函數:

import matlab.engine

eng = matlab.engine.start_matlab()

tf = eng.isprime(37)

print(tf)

通過 Python 調用用戶腳本和函數:

您的當前文件夾中名為 triarea.m 的文件中創建一個 MATLAB 腳本。

b = 5;

h = 3;

a = 0.5*(b.* h)

import matlab.engine

eng = matlab.engine.start_matlab()

eng.triarea(nargout=0)

在 Python 中使用 MATLAB 數組:

import matlab.engine

eng = matlab.engine.start_matlab()

a = matlab.double([1,4,9,16,25])

b = eng.sqrt(a)

print(b)

[[1.0,2.0,3.0,4.0,5.0]]

引擎返回 b,它是 1×5 的 matlab.double 數組。


以上就是Python如何調用MATLAB 的基本步驟和方法,希望能夠幫助到你!


程序猿來導事


1。編譯成dll.調用

2.編譯成exe調用。

3動態調用

4. web調用

5.接口調用

6做成板子調用

基本這幾種。


分享到:


相關文章: