主要内容

直接调用Python功能从MATLAB

你可以从Python中调用函数®库或直接从MATLAB执行Python语句®

访问Python模块

要访问Python库,请添加py。Python名的前缀。例如:

py。list({'This','is a','list'}) %调用内置函数列表py.textwrap。wrap('This is a string') %在模块textwrap中调用wrap函数

有关更多信息,请参见从MATLAB开始访问Python模块

运行Python代码

要从MATLAB命令提示符执行Python解释器中的Python语句,请使用pyrun函数。使用这个函数,您可以运行代码,将MATLAB类型作为输入传递,并将部分或全部变量返回给MATLAB。例如,假设您在Python解释器中运行这条语句。

>>> l = ['A', 'new', 'list']

要从MATLAB中运行语句,请使用pyrun.将结果返回给MATLAB变量myList,添加“l”作为一个输出论点:

myList = pyrun("l = ['A', 'new', 'list']"“l”);

运行Python脚本

要从MATLAB命令提示符调用Python脚本,请使用pyrunfile函数。传递MATLAB数据并返回变量的方法与pyrun.例如,创建一个mklist.py与这些声明一起归档:

# Python脚本文件mklist.py: s = 'list' L = ['A', 'new', s]

在MATLAB中运行脚本:

myListFile = pyrunfile(“mklist.py”“L”
myListFile =没有属性的Python列表。['A', 'new', 'list']

访问Python变量

当你使用py。前缀,MATLAB导入整个模块,并可以访问Python代码的所有函数和类。方法执行Python代码时pyrunpyrunfile函数,如果你想访问Python数据,你必须显式返回Python对象到MATLAB使用outvars论点。

局限性pyrun而且pyrunfile功能

使用pyrunpyrunfile如果您将类的实例返回给MATLAB,则不能修改。如果你需要改变类定义,重新启动解释器会话:

终止(pyenv) pyenv(“ExecutionMode”、“OutOfProcess”)

或者,重新启动MATLAB for“InProcess”

pyrun而且pyrunfile函数不支持由其他局部变量通过方法初金宝app始化的具有局部变量的类。方法来创建一个模块并访问它py。前缀。

另请参阅

|

相关的话题