主要内容

本页采用了机器翻译。点击此处可查看最新英文版本。

调用打包的 MATLAB 函数

Python® 客户端和 MATLAB® Production Server™ 实例之间的连接封装在 matlab.production_server.client.MWHttpClient 对象中。您使用客户端连接对象调用已部署的 MATLAB 函数。

result1,...resultN = my_client.archive_name.function_name(in_args,
                                                          nargout=nargs)
  • my_client - 客户端连接对象的名称

  • archive_name - 托管该函数的可部署存档的名称

  • function_name - 要调用的函数的名称

  • in_args - 以逗号分隔的输入参量列表

  • nargs - 预计服务器返回的结果数。默认值为 1。

注意

如果要调用的函数返回输出,则函数调用左侧的每个变量都会填充一个返回值。如果在函数调用左侧提供少于 nargs 个变量,则最后列出的变量包含剩余结果的列表。例如,

result1, result2 = myMagic.triple(5,nargout=3)

使得 result1 包含单个值,而 result2 包含具有两个值的列表。

调用返回多个输出的 MATLAB 函数

将多个结果作为单个变量接收

要从可部署存档 c1,c2 = copy(o1,o2) 调用 MATLAB 函数 copier,请使用以下代码:

>>> import matlab
>>> from production_server import client
>>> my_client = client.MWHttpClient("http://localhost:9910")
>>> c1,c2 = my_client.copier.copy("blue",10,nargout=2)
>>> print(c1)
"blue"
>>> print(c2)
10

变量 c1c2 填充有一个返回值。

将多个结果作为单个对象接收

要从可部署存档 copies = copy(o1,o2) 调用 MATLAB 函数 copier,请使用以下代码:

>>> import matlab
>>> from production_server import client
>>> my_client = client.MWHttpClient("http://localhost:9910")
>>> copies = my_client.copier.copy("blue",10,nargout=2)
>>> print(copies)
["blue",10]

变量 copies 填充了包含所有返回值的列表。

调用返回零输出的 MATLAB 函数

要从可部署存档 mutate(m1, m2, m3) 调用 MATLAB 函数 mutations,请使用以下代码:

import matlab
from production_server import client

my_client = client.MWHttpClient("http://localhost:9910")

m1 = matlab.double(...)
m2 = matlab.double(...)
m3 = matlab.double(...)

my_client.mutations.mutate(m1,m2,m3)

调用返回单个输出的 MATLAB 函数

要从可部署存档 result = mutate(m1, m2, m3) 调用 MATLAB 函数 mutations,请使用以下代码:

import matlab
from production_server import client

my_client = client.MWHttpClient("http://localhost:9910")

m1 = matlab.double(...)
m2 = matlab.double(...)
m3 = matlab.double(...)

result = my_client.mutations.mutate(m1,m2,m3)

另请参阅

主题