Python列表操作方法详解
(编辑:jimmy 日期: 2024/11/19 浏览:3 次 )
本节内容
- 0、列表常用功能汇总
- 1、定义列表
- 2、访问列表中的元素
- 3、切片
- 4、追加
- 5、插入
- 6、修改
- 7、拷贝
- 8、删除
- 9、扩展
- 10、统计
- 11、翻转
- 12、排序
- 13、获取下标值
- 14、清空列表
列表是Python最常用的数据类型之一,通过列表可以对数据实现最方便的存储、修改等操作
0、列表常用功能汇总
1、定义列表
> name=[] #定义空列表 > name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei'] #定义一个非空列表
2、访问列表中的元素
> name=[] > name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei'] > name[0] 'luoahong' > name[1] 'chenqun' > name[2] 'wenhai' > name[3] 'daiqiao' > name[-1] #倒着取最后一个值 'guiwei' > name[-2] 'xiedi'
注:列表的下标值是从0开始取值的
3、切片
> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei'] > name[1:3] ['chenqun', 'wenhai'] > name[1:-1] ['chenqun', 'wenhai', 'daiqiao', 'xiedi'] > name[0:3] ['luoahong', 'chenqun', 'wenhai'] > name[:3] ['luoahong', 'chenqun', 'wenhai'] > name[3:] ['daiqiao', 'xiedi', 'guiwei'] > name[:2] ['luoahong', 'chenqun'] > name[::2] ['luoahong', 'wenhai', 'xiedi']
切片小结:
①序列始终都是从左向右切片的,不能是从右向左
①列表切片时,起始位的元素是包括的,结束位的元素是不包括(又叫顾头不顾尾),最后一个位置表示步长(names[开始位:结束位:步长])
②如果从0位置取值,0可以省略
③想取最后一个值时,结束位不能是-1,因为结束位的元素不包括,所以只能留空
4、追加(append(元素))
> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei'] > name.append("liuhailin") > name ['luoahong', 'chenqun', 'wenhai', 'daiqiao', 'xiedi', 'guiwei', 'liuhailin'] #liuhailin是新加的
5、插入(insert(下标值,插入的内容))
> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei'] > name.insert(0,"liyang") #0表示需要插入的下标值,'1'表示插入的内容 > name ['liyang', 'luoahong', 'chenqun', 'wenhai', 'daiqiao', 'xiedi', 'guiwei'] #在下标值为0的地方插入liyang
6、修改
> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei'] > name[1]='chenqundage' > name ['luoahong', 'chenqundage', 'wenhai', 'daiqiao', 'xiedi', 'guiwei']
注:修改列表中的元素,直接是 names[下标值] = 新值
7、拷贝(copy())
> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei'] > name2=name.copy() > name2 ['luoahong', 'chenqun', 'wenhai', 'daiqiao', 'xiedi', 'guiwei']
注:这边的copy都是浅copy,只能copy第一层。深浅拷贝的详细信息:
8、删除(del、remove(元素)、pop())
#根据下标值删除元素
> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei'] > del name[0] > name ['chenqun', 'wenhai', 'daiqiao', 'xiedi', 'guiwei']
#根据元素删除 > name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei'] > name.remove('xiedi') > name ['luoahong', 'chenqun', 'wenhai', 'daiqiao', 'guiwei']
#删除最后一个 > name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei'] > name.pop() 'guiwei' > >
注:
①如果pop()中有下标值,则是删掉具体某个元素,其效果和del的效果是一样的
> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei'] > name.pop(1) #在输入下标值得情况下和del的效果是一样的
'chenqun' > name ['luoahong', 'wenhai', 'daiqiao', 'xiedi', 'guiwei']
②del关键字不仅可以删除列表中的元素,也可以删除变量
> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
#删除name这个变量
del name > name Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name 'name' is not defined
注:
①如果pop()中有下标值,则是删掉具体某个元素,其效果和del的效果是一样的
②del关键字不仅可以删除列表中的元素,也可以删除变量
9、扩展(extend)
> name1=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei'] > name2=['1','2','3','4','5','6'] > name1.extend(name2) > name1 ['luoahong', 'chenqun', 'wenhai', 'daiqiao', 'xiedi', 'guiwei', '1', '2', '3', '4', '5', '6']
注:names2的列表合并到names1中,但是,names2这个列表依然存在,如果想删除names2这个变量,则只需del names2即可
10、统计(count(元素))
> name1=['luoahong','chenqun','wenhai','daiqiao','chenqun','xiedi','guiwei','chenqun'] > name1.count('chenqun') #统计元素'chenqun'元素的个数 3
11、翻转(reverse())
> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei'] > name.reverse() > name ['guiwei', 'xiedi', 'daiqiao', 'wenhai', 'chenqun', 'luoahong'] #将整个列表翻转过来
12、排序(sort())
> name=['4','3','2','1'] > name.sort() > name ['1', '2', '3', '4']
13、获取下标值(index(元素))
> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei'] > name.index('chenqun') 1
14、清空列表(clear())
> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei'] > name.clear() NameError: name 'names' is not defined > name []
更多关于Python列表操作方法请查看下面的相关链接
下一篇:python 爬取疫情数据的源码