Python列表操作总结

列表

a_list=[1,2,3,4] 

 

特点

有序

可变

连续的内存空间,最好从尾部进行元素的增加与删除

 

列表的创建

a_list=[1,2,3,4]

a_list=list((3,5,7,9,11)) 

a_list=[5 for I in range(10)]

列表推导式

[I for I in a_list if i>0]

list(a)

转化成列表

列表元素的增加

a_list.append(9)

真正意义上的在列表尾部添加元素,但是+ 是创建新列表

a_list.insert(3,6)

把a_list.insert(index,object)

Insert object before index

元素插入到指定位置

a.extend([7,8,9])

将另一个迭代对象的所有元素添加至该列表对象的尾部

a=a*3 

将列表中的所有元素重复了3次,但是这实际上是产出了一个新列表,并使a指向了新的列表

a[len(a):]=[7]

使用切片为列表增加元素,切片表示开始的位置为len(a)

列表元素的删除

del a[0]  

 

按照索引删除

a.pop()

a.pop(1)

删除并返回指定位置上的元素,默认为最后一个位置

a[len(a)-1:]=[]

使用切片,删除最后一个元素

a[1:3]=[]

使用切片,删除1,2 两个元素

a.remove(7)

删除首次出现的指定元素

坑: 删除列表中指定元素的所有重复要从后往前删

按照值删除

列表元素的访问

a[1]

 

a.index(7)

获取指定元素首次出现的下标

b=a[1:10:2]

使用切片访问元素,切片用在等号右边,返回列表的浅复制

列表的遍历

for i in a:

print(i)

使用元素直接访问

for i in range(len(a)):

print(a[i])

使用下标访问

a=[0,1,2]

for item in enumerate(a):

print(item)

(0,0)

(1,1)

(2,2)

枚举列表,返回枚举对象,枚举对象中的每个元素是由下标和元素值组成的元组

列表元素的修改

a[2]=3

 

a[1:3]=[7,7]

使用切片修改元素

列表常用操作

计数

a.count(7)

指定元素在列表中出现的次数

求长度

len(a)

 

求最值

max(a) min(a)

 

求和

sum(a)

 

比较列表大小

[1,2,3,5]<[1,2,4,] True

只比第一个不同的元素

[1,2]<[1,2,3]

多了一个元素也认为是大

列表组合

a=[1,2,3]

b=[4,5,6]

list(zip(a,b))

[(1,4),(2,5),(3,6)]

将列表或元组对应位置的元素组合成元组,并返回包含这些元组的zip对象,里面是一个个元组

列表排序

a.sort()

原地升序排列

a.sort(reverse=True)

原地降序排列

a.sort(key=lambda x:len(str(x)))

自定义排序

sorted(a)

内置函数排序,返回新列表,不对原列表进行修改

sorted(a,reverse=True)

降序排列

posted @ 2017-03-01 10:56  unflynaomi  阅读(903)  评论(0编辑  收藏  举报