Access MATLAB function in own function via python

2 次查看(过去 30 天)
I want to access a MATLAB-function, that is used inside my own function via python. Therefore I use the python-package "matlab.engine". Including a MATLAB-function according to the documentation works fine. But supposing my MATLAB-function looks like this:
function y = test_function(input)
y = isprime(input)
end
and I want to access it via the following python script:
import matlab.engine
eng = matlab.engine.start_matlab()
a = eng.test_function(37.0, nargout=0, async=False)
print(a)
Then I get the following error:
Undefined function 'isprime' for input arguments of type 'double'

采纳的回答

Helper
Helper 2018-6-28
Please make sure all the functions, "test_function" and "isprime" are in MATLAB search path or the current folder. The MATLAB engine we launched inside Python will have the default MATLAB search path. So if the function "isprime" is not in the search path or the current folder, then MATLAB cannot recognize it.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Call MATLAB from Python 的更多信息

产品


版本

R2018a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by