对元胞数组进行拆分和合并,是将元胞数组中的单个元素拆分为元胞数组,或将所有元素合并为一个元素。对列表进行拆分和合并,是将字符串用指定分隔符分割的结果放到列表,或将列表中的所有元素用指定连接符合并为一个字符串。[大谦MATLAB,dqmatlab点com]
拆分
在MATLAB中,将字符串分割为元胞数组。在Python中,将字符串用指定分隔符分割的结果放到列表。
【MATLAB】
code.matlab
>>> a='Where are you from';
>>> split(a)
ans =
4×1 cell 数组
{'where'}
{'are'}
{'you'}
{'from'}
【Python】
对于字符串,使用其split方法可以按指定的分隔符进行分割,分隔的结果以列表的形式返回。下面给定一个字符串,使用split函数,用默认的空格分隔符进行分割,返回一个列表。
code.python
>>> a='Where are you from'
>>> a.split()
['Where', 'are', 'you', 'from']
合并
MATLAB中,将元胞数组的所有元素合并为一个元素。Python中,将列表中的所有元素用指定连接符合并为一个字符串。
【MATLAB】
可以使用与合并普通数组类似的方式合并多个元胞数组。下面将元胞数组A1和A2合并成元胞数组A。
code.matlab
>> A1={'Hello',123,'Matlab'};
>> A2={[1 3],['a','b'],78};
>> A=[A1 A2] %水平拼接
A =
1×6 cell 数组
列 1 至 5
{'Hello'} {[123]} {'Matlab'} {[1 3]} {'ab'}
列 6
{[78]}
>> A=[A1;A2] %垂直拼接
A=
'Hello' [123] 'Matlab'
[1x2 double] 'ab' [ 78]
下面用join函数合并元胞数组中的字符数组。
code.matlab
>> B={'Hello','123','Matlab'};
>> join(B,x27;-') %用join函数合并
ans =
1×1 cell 数组
{'Hello-123-Matlab'}
【Python】
使用字符串对象的join方法可以用指定的间隔符连接列表给出的多个字符串。下面用变量b将要连接的字符串用列表给出,用变量a指定分隔符,连接列表各元素。
code.python
>>> a=','
>>> b=['hello','abc','python']
>>> a.join(b)
'hello,abc,python'