具体的环境配置可以查阅这儿。
2.一般不设置默认只返回第一个返回值,并不能返回你想要的所有返回值。test.py的内容为:
import numpy as np # 使用matlab2016 import matlab.engine engine = matlab.engine.start_matlab() results = engine.test() print(results)
test.m的内容为:
function [a,b] = test()
a = 1;
b = 2;
end
运行test.py,此时,我们运行时会得到:
按理说我们应该得到[1,2],可实际上我们只得到了1。那我们在接受返回值的时候设置为
import numpy as np # 使用matlab2016 import matlab.engine engine = matlab.engine.start_matlab() [a,b] = engine.test() print(a,b)
它会报错:
3.只需要加一个参数nargout即可,具体就是test.py是
import numpy as np # 使用matlab2016 import matlab.engine engine = matlab.engine.start_matlab() [a,b] = engine.test(nargout=2) print(a,b)
test.m仍是
function [a,b] = test()
a = 1;
b = 2;
end
但是此时就能得到两个返回值了:
加一个参数nargout就能让matlab返回多个返回值了。
哒哒哒哒~



