数组合并中符号的区别

记录一波在使用python数组时候的一些特别之处,符号不同效果不同。目的是将两个数据合成一个。
1、[ ]的效果

a = [[1,2],[3,4],[5,6]];
b = [[7,8],[9,10]];
c = [a,b];
output:
c = [[[1,2],[3,4],[5,6]],[[7,8],[9,10]]]

可见用[dataset1,dataset2]合并的方法只是单纯将两个数据集作为两个大的数组合并到一个数组里了,c[0]= a,c[1]=b,这样是毫无意义的,从内存存储方面来说,相当于a,b都仍然是原始的内存地址,c只是存储了2个地址的值,在内存角度上并没有放到一个内存块中,两个地址并不连续。

2、+ 的效果

c = a + b 
output:
c = [[1,2],[3,4],[5,6],[7,8],[9,10]];

采用dataset1+ dataset2 的效果可见是存储到一个内存块中,并且地址是连续的,可以按照c[0]到c[4]的顺序访问,符合我们的预期要求。

3、 append( )效果

a.append(b);
output:
a= [[1,2],[3,4],[5,6],[[7,8],[9,10]]];
a[0] = [1,2];
a[3] = [[7,8],[9,10]];

python一个比较不太规则的方法(其实个人感觉这个方法人性但是有时候遇到数据量比较大的时候就不会太注意,所以还是规则卡死比较好),append可以直接在尾部添加与前面数据长度不一致的数据,所以就导致在处理中不太方便。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容