Python列表常用方法及基本操作

list1 = [1,2,3,4,5,6,7,8,9,10]

list2 = ['a','b','c','d','e','f']

基本操作

1.删除指定元素

del list1[2] 删除了列表内的3

支持切片:del list1[1:3]即可删除列表内的2和3

2.分片赋值

1 name = list('LiXiaolong')
2 name
3 ['L','i','X','i','a','o','l','o','n','g']
4 name[2:] = 'Lianjie'
5 name
6 ['L','i','L','i','a','n','j','i','e']

虽然后来的LiLianjie比原来的LiXiaolong字符长度少1,但是经过第4行代码:

name[2:] = 'Lianjie'后,原来的列表长度被更改了

列表的方法

  1.count

 用于计算某个元素出现的次数

1 list1.count(1)
2 1

2.extend

extend方法可以在列表末尾追加另一个列表的值,即扩展了原有列表

list1.extend(list2)
[1,2,3,4,5,6,7,8,9,10,'a','b','c','d','e','f']

我知道你想说.这个方法顶个和鸟用,我一个连接符+教你做人

别燥,该方法与+的区别是,该方法属于原地操作,而+会返还一个包含两个列表的副本,原列表没有改变

如果采用list1 = list1 + list2这样的方法,效率上就吃亏了

当然你也可以这样实现

list1[len(list1):] = list2

但是可读性上就远不如此方法了

3.index

用于从列表中寻找第一个匹配的值

1 list1.index(10)
2 ouput:9

p.s.:rindex方法只有字符串有,列表没有

4.insert

insert方法能在列表指定位置前插入指定元素,故需写入两个参数

list1.insert(3,11)
output:[1,2,3,11,4,5,6,7,8,9,10]

可理解成在第几个元素后插入XX

5.remove

在列表中删除第一个匹配的元素

list1.remove(1)
output:[2,3,4,5,6,7,8,9,10]

注意:每次只能删除一个元素,不能批量删除

6.reverse

对列表进行反向存放,属于原地操作

list1.reverse()
output:[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]

7.sort

sort方法是按固定排序对列表进行排序,但要注意,以下是此方法典型的错误使用:

list1.reverse()#先对list1进行反向排序
list2 = list1.sort() #错误的开始
list2
output:None
list1
output:[1,2,3,4,5,6,7,8,9,10]

之所以列表list2为空,是因为列表list1在调用sort方法后并未返回排好的列表list1,而是返回了一个空值None,

但是列表list1却已经进行了排序操作

所以如果你想获取一个排序后的列表,同时保留原列表,那么应该这样做:

list1.reverse()
list3 = list1[:]
list3.sort()
list1
output:[10,9,8,7,6,5,4,3,2,1]
list3
ouput:[1,2,3,4,5,6,7,8,9,10]

list3 = list1[:] 与 list3 = list1的区别在于:前者是获得了list1的副本,后者只是让list3简单地指向了list1

另外,sort方法还提供两个关键字参数(key和reverse)实现自定义排序

key参数应当传入排序的方法函数名,reverse为一个布尔值,确定是否反向排序

a = ['abcd','abc','ab',''abcde]
a.sort(key=len,reverse=False)
output:['abcde','abcd','abc','ab']

 

转载于:https://www.cnblogs.com/yamiedie/p/7702795.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值