3 回答

TA貢獻(xiàn)1998條經(jīng)驗(yàn) 獲得超6個(gè)贊
我對(duì)系統(tǒng)有類(lèi)似的要求,這是我的解決方案:
在MATLAB中,有一個(gè)名為perl.m的函數(shù),該函數(shù)允許您從MATLAB中調(diào)用perl腳本。根據(jù)您使用的版本,它會(huì)位于類(lèi)似
C:\Program Files\MATLAB\R2008a\toolbox\matlab\general\perl.m
創(chuàng)建一個(gè)名為python.m的副本,這是一個(gè)快速搜索并用python替換perl的副本,再次檢查其設(shè)置的命令路徑以指向您的python安裝。您現(xiàn)在應(yīng)該能夠從MATLAB運(yùn)行python腳本。
例
python中一個(gè)簡(jiǎn)單的平方函數(shù),另存為“ sqd.py”,如果正確執(zhí)行此操作,自然會(huì)在測(cè)試輸入?yún)?shù),有效數(shù)字等方面進(jìn)行一些檢查。
import sys
def squared(x):
y = x * x
return y
if __name__ == '__main__':
x = float(sys.argv[1])
sys.stdout.write(str(squared(x)))
然后在MATLAB中
>> r=python('sqd.py','3.5')
r =
12.25
>> r=python('sqd.py','5')
r =
25.0
>>

TA貢獻(xiàn)2011條經(jīng)驗(yàn) 獲得超2個(gè)贊
Jython是最簡(jiǎn)單的解決方案。
只需從主頁(yè)安裝Jython 。
然后:
javaaddpath('/path-to-your-jython-installation/jython.jar')
import org.python.util.PythonInterpreter;
python = PythonInterpreter; %# takes a long time to load!
python.exec('import some_module');
python.exec('result = some_module.run_something()');
result = python.get('result');
注意:我從未真正使用過(guò)Jython,似乎人們可能從CPython知道的標(biāo)準(zhǔn)庫(kù)并未在Jython中完全實(shí)現(xiàn)!
我測(cè)試的一些小示例效果很好,但您可能會(huì)發(fā)現(xiàn)必須將Python代碼目錄添加到sys.path。
添加回答
舉報(bào)