这篇文章主要介绍了Python列表操作方法详解,需要的朋友可以参考下.
本节内容
- 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'``] ``#定义一个非空列表`
|
- 1
- 2
- 3
- 4
- 5
- 6
- 7
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'`
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
|
注:列表的下标值是从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'``]`
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
|
切片小结:
①序列始终都是从左向右切片的,不能是从右向左
①列表切片时,起始位的元素是包括的,结束位的元素是不包括(又叫顾头不顾尾),最后一个位置表示步长(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是新加的`
|
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
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`
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
|
6、修改
|
`>>> name``=``[``'luoahong'``,``'chenqun'``,``'wenhai'``,``'daiqiao'``,``'xiedi'``,``'guiwei'``]`
`>>> name[``1``]``=``'chenqundage'`
`>>> name`
`[``'luoahong'``,` `'chenqundage'``,` `'wenhai'``,` `'daiqiao'``,` `'xiedi'``,` `'guiwei'``]`
|
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
注:修改列表中的元素,直接是 names[下标值] = 新值
7、拷贝(copy())
|
`>>> name``=``[``'luoahong'``,``'chenqun'``,``'wenhai'``,``'daiqiao'``,``'xiedi'``,``'guiwei'``]`
`>>> name2``=``name.copy()`
`>>> name2`
`[``'luoahong'``,` `'chenqun'``,` `'wenhai'``,` `'daiqiao'``,` `'xiedi'``,` `'guiwei'``]`
|
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
注:这边的copy都是浅copy,只能copy第一层。
8、删除(del、remove(元素)、pop())
|
`#根据下标值删除元素<br>>>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']`
`>>>` `del` `name[``0``]`
`>>> name`
`[``'chenqun'``,` `'wenhai'``,` `'daiqiao'``,` `'xiedi'``,` `'guiwei'``]<br>``#根据元素删除`
`>>> name``=``[``'luoahong'``,``'chenqun'``,``'wenhai'``,``'daiqiao'``,``'xiedi'``,``'guiwei'``]`
`>>> name.remove(``'xiedi'``)`
`>>> name`
`[``'luoahong'``,` `'chenqun'``,` `'wenhai'``,` `'daiqiao'``,` `'guiwei'``]<br>``#删除最后一个`
`>>> name``=``[``'luoahong'``,``'chenqun'``,``'wenhai'``,``'daiqiao'``,``'xiedi'``,``'guiwei'``]`
`>>> name.pop()`
`'guiwei'`
`>>>`
`>>> `
|
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
注:
①如果pop()中有下标值,则是删掉具体某个元素,其效果和del的效果是一样的
|
`>>> name``=``[``'luoahong'``,``'chenqun'``,``'wenhai'``,``'daiqiao'``,``'xiedi'``,``'guiwei'``]`
`>>> name.pop(``1``) ``#在输入下标值得情况下和del的效果是一样的<br>'chenqun'`
`>>> name`
`[``'luoahong'``,` `'wenhai'``,` `'daiqiao'``,` `'xiedi'``,` `'guiwei'``]`
|
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
②del关键字不仅可以删除列表中的元素,也可以删除变量
|
`>>> name``=``[``'luoahong'``,``'chenqun'``,``'wenhai'``,``'daiqiao'``,``'xiedi'``,``'guiwei'``]<br>``#删除name这个变量<br> del name`
`>>> name`
`Traceback (most recent call last):`
`File` `"<stdin>"``, line` `1``,` `in` `<module>`
`NameError: name` `'name'` `is` `not` `defined`
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
|
注:
①如果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'``]`
|
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
注:names2的列表合并到names1中,但是,names2这个列表依然存在,如果想删除names2这个变量,则只需del names2即可
10、统计(count(元素))
|
`>>> name1``=``[``'luoahong'``,``'chenqun'``,``'wenhai'``,``'daiqiao'``,``'chenqun'``,``'xiedi'``,``'guiwei'``,``'chenqun'``]`
`>>> name1.count(``'chenqun'``) ``#统计元素'chenqun'元素的个数`
`3`
|
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
11、翻转(reverse())
|
`>>> name``=``[``'luoahong'``,``'chenqun'``,``'wenhai'``,``'daiqiao'``,``'xiedi'``,``'guiwei'``]`
`>>> name.reverse()`
`>>> name`
`[``'guiwei'``,` `'xiedi'``,` `'daiqiao'``,` `'wenhai'``,` `'chenqun'``,` `'luoahong'``] ``#将整个列表翻转过来`
|
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
12、排序(sort())
|
`>>> name``=``[``'4'``,``'3'``,``'2'``,``'1'``]`
`>>> name.sort()`
`>>> name`
`[``'1'``,` `'2'``,` `'3'``,` `'4'``]`
|
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
13、获取下标值(index(元素))
|
`>>> name``=``[``'luoahong'``,``'chenqun'``,``'wenhai'``,``'daiqiao'``,``'xiedi'``,``'guiwei'``]`
`>>> name.index(``'chenqun'``)`
`1`
- 1
- 2
- 3
- 4
- 5
|
14、清空列表(clear())
|
`>>> name``=``[``'luoahong'``,``'chenqun'``,``'wenhai'``,``'daiqiao'``,``'xiedi'``,``'guiwei'``]`
`>>> name.clear()`
`NameError: name` `'names'` `is` `not` `defined`
`>>> name`
`[]`
|
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11