Main Content

本页的翻译已过时。点击此处可查看最新英文版本。

在 MATLAB 中使用 Python tuple 变量

此示例说明如何在 MATLAB® 中使用 Python® tuple 变量。

调用接受 tuple 输入参数的 Python 函数

Python 版本 2.7 的函数 cmp(a,b) 比较两个 tuple 值。要调用 cmp,请传递 MATLAB 元胞数组,或通过调用 py.tuple 命令创建一个 tuple

创建一个 tuple 变量以传递给 Python 函数。

pStudent = py.tuple({'Robert',19,'Biology'})
pStudent = 
  Python tuple with no properties.

    ('Robert', 19.0, 'Biology')

创建一个等效的元胞数组。

mStudent = {"Robert",19,"Biology"}
mStudent=1×3 cell array
    {["Robert"]}    {[19]}    {["Biology"]}

tuple 值与 MATLAB 元胞数组值进行比较。如果 a<b,则输出为 -1;如果 a=b,则输出为 0;如果 a>b,则输出为 1。这些值是等效的。

pe = pyenv;
if pe.Version == "2.7"
    py.cmp(pStudent, mStudent)
end

tuple 转换为 MATLAB 变量

要将 tuple 转换为 MATLAB 元胞数组,请调用 cell 函数。

S = cell(pStudent)
S=1×3 cell array
    {1×6 py.str}    {[19]}    {1×7 py.str}

读取 tuple 中的元素

使用 MATLAB 索引显示 tuple 中的元素。例如,显示 pStudent 的前两个元素。MATLAB 返回一个 tuple 变量。

pStudent(1:2)
ans = 
  Python tuple with no properties.

    ('Robert', 19.0)

显示一个元素。MATLAB 返回一个 Python 数据类型的元素。

pStudent{3}
ans = 
  Python str with no properties.

    Biology

创建包含单个元素的 tuple

用单个元素创建一个 tuple 变量。MATLAB 对包含一个元素的 tuple 显示尾部逗号。

subject = py.tuple({'Biology'})
subject = 
  Python tuple with no properties.

    ('Biology',)