主要内容

使用Python列表MATLAB中的变量

这个例子展示了如何使用Python®列表变量在MATLAB®。

需要调用Python函数列表输入参数,创建一个py.list变量。将MATLAB变量列表,调用细胞函数,然后调用适当的转换函数为每个元素在列表中。

这需要调用的Python函数列表输入参数

Pythonlen函数返回物品的数量在一个容器,其中包括一个列表对象。

py.help (“兰”)
帮助内置函数模块内置len: len (obj, /)返回条目的数量在一个容器中。

调用os.listdir创建一个Python列表项目命名P

P = py.os.listdir (“C: \ Program Files \ MATLAB”);类(P)
ans = ' py.list '

显示项目的数量。

py.len (P)
ans = Python int属性:分母:[1×1 py.int]图像放大:[1×1 py.int]分子:[1×1 py.int]真实:[1×1 py.int] 9

显示一个元素。

P {2}
ans Python str =没有属性。R2016b

索引Python列表

使用MATLAB索引显示列表中的元素。例如,显示在最后一个元素列表。MATLAB返回一个Python列表

P(结束)
ans = Python列表没有属性。(“R2021a”)

你也可以在一个循环遍历列表循环。

n = P disp (n {1})结束
Python str没有属性。R2014b Python str没有属性。R2016b Python str没有属性。R2017b Python str没有属性。R2018b Python str没有属性。R2019a Python str没有属性。R2019b Python str没有属性。R2020a Python str没有属性。R2020b Python str没有属性。R2021a

转换为Python列表MATLAB类型类型

这段代码显示的名称列表P使用MATLAB变量。调用细胞将列表。列表是由Python字符串,所以调用字符函数转换单元阵列的元素。

cP =细胞(P);

每个细胞元素名称是一个Python字符串。

类(cP {1})
ans = ' py.str '

Python字符串转换为MATLAB数据。

延时=字符串(细胞(P));

显示的名字。

n = 1:元素个数(cP) disp (mlP {n})结束
R2014b R2016b R2017b R2018b R2019a R2019b R2020a R2020b R2021a

使用Python MATLAB的数值类型列表

一条巨蟒列表包含任何类型的元素,可以包含元素的混合类型。MATLAB函数用于Python的这段代码假设所有元素列表是数字。

假设您有一个Python函数返回列表的整数P。运行这段代码,用这些值创建变量。

P = py.list ({int32 (1) int32 (2), int32 (3), int32 (4)})
P = Python列表没有属性。(1、2、3、4)

显示的数值类型值。

类(P {1})
ans = ' py.int '

转换PMATLAB单元阵列。

cP =细胞(P);

细胞数组转换为一个MATLAB的数组

= cellfun (@double cP)
一个=1×41 2 3 4

读取元素的嵌套列表类型

这段代码访问Python的一个元素列表变量包含列表元素。假设您有这个列表

矩阵= py。列表({{1, 2, 3, 4},{“你好”,“世界”},{9 10}});

显示元素“世界”,这是在索引(2,2)

disp (char(矩阵{2}{2}))
世界

显示了Python元素的范围

如果你使用切片来访问元素的Python对象,Python的格式启动:停止:一步。在MATLAB中,语法的形式开始:步骤:停止

李= py.list ({“一个”,“公元前”,1 2“def”});李(1:2)
ans = Python列表没有属性。[a, 1.0,“def”)