Python进行数组合并的方法

Python010

Python进行数组合并的方法,第1张

python的数组合并在算法题中用到特别多,这里简单总结一下:

假设有a1和a2两个数组:

a1=[1,2,3]

a2=[4,5,6]

1. 直接相加

合并后赋值给新数组a3

a3 = a1 + a2

2. extend

调用此方法,a1会扩展成a1和a2的内容 a1.extend(a2)

3. 列表表达式

先生成新的二维数组) a3 = [a1, a2])

列表推导形成新的数组) a4 = [ y for a in a3 for y in a ])

下面分别测试下三种数组合并方式的性能

分别输出:

17.2916171551

20.8185400963

55.1758739948

可以看出:在数据量大的时候,第一种方式的性能要高出很多。

python中list(列表)和array(数组)的区别是:

列表 是由一系列按特定顺序排列的元素组成,可以将任何东西加入列表中,其中的元素之间没有任何关系;

数组 也就是一个 同一类型的数据 的有限集合;

列表list与数组array的相同点:

a. 都可以根据索引来取其中的元素

列表list与数组array的不同点:

a.列表list中的元素的数据类型可以不一样。数组array里的元素的数据类型必须一样;

b.列表list不可以进行数学四则运算,数组array可以进行数学四则运算;

c.相对于array,列表会使用更多的存储空间。

先定义一个数组列表:

列表合并也可以用+,但是用+的话,会产生一个新的列表(当然也可以赋值给任何的变量),而extend则只是修改了原来的对象

只读数组,只能查看不能编辑,列表的切片操作同样适于元组。

表达方式:tuple=("元素1","元素2","元素3"),中间同样用,隔开

特殊的元组:tupleZero=()空元组

                        tupleOne=("元素1",)  只有一个元素,后面要跟一个,(注意好的习惯的养成)

作用:1.对于一些不想被修改的元素,可以放在元组里面

        2.元组可以在映射(和集合的成员)中当作键使用,而列表不行

        3.元组作为内建函数和方法的返回值

enumerate(列表对象,返回标签起始值(默认为零))

上面的例子可以看出,返回的i是一个元组,如果不想要元组的话,可以用两个参数接收: