使用 pymatlab 从 Python 脚本调用 Matlab 函数

Call Matlab function from Python script using pymatlab

谁能告诉我如何使用 pymatlabpython 脚本调用 Matlab 函数?

Matlabpymatlabpython 已经正确安装。 我尝试在 python 脚本上 运行 来自 here 的一些 Matlab 命令,一切正常。但是我不知道从 python.

调用 Matlab 函数

例如,我有一个 Matlab 函数,它将接收 string 作为 argument 并显示它和 return 它,如下所示。

function [ name ] = print_Name(first_Name)
name=first_Name;
end

提前感谢您的建议。

您需要先初始化一个 MATLAB 会话

import pymatlab
session = pymatlab.session_factory()

然后您可以使用 run 方法调用您希望的任何 MATLAB 函数

session.run("print_Name('name')")

或者您可以在工作区中分配一个值并使用它

name = 'My Name'
session.putValue('name', name)
session.run('print_Name(name)')

如果你想取回一个值,你总是可以将 print_Name 的输出分配给一个变量,然后调用 session.getValue 将其取回 Python

session.run('output = print_Name(name)')
result = session.getValue('output')

也就是说,我强烈建议使用 The Mathwork 自己的 library 与 Python 中的 MATLAB 交互。