Python列表常用操作

  • 2020 年 09 月 14 日
  • 64次
  • 679 字
  • 2 条评论

1.列表的创建与删除

列表的创建
(1)使用“=”直接将一个列表赋值给变量即可创建列表对象。
(2)也可以使用list()函数将元组、range对象、字符串或其他类型的可迭代对象类型的数据转换为列表。

>>> a_list = []   #创建空列表
>>> a_list = ['a', 'b', 'mpilgrim','z', 'example']

列表的删除
当不再使用时,使用del命令删除整个列表,如果列表对象所指向的值不再有其他对象指向,Python将同时删除该值。

>>> del a_list
>>> a_list

2 列表元素的增加

(1)可以使用“+”运算符将元素添加到列表中。

>>> aList = [3,4,5]
>>> aList = aList + [7]
>>> aList
[3, 4, 5, 7]

(2)使用列表对象的append()方法在当前列表尾部追加元素,原地修改列表,是真正意义上的在列表尾部添加元素,速度较快。

>>> a = [1,2,3]
>>> id(a) #返回对象的内存地址
20230752
>>> a = [1,2]
>>> id(a)
20338208

(3)使用列表对象的extend()方法可以将另一个迭代对象的所有元素添加至该列表对象尾部。通过extend()方法来增加列表元素也不改变其内存首地址,属于原地操作。

>>> a.extend([7,8,9])
>>> a
[5, 2, 4, 7, 8, 9]
>>> id(a)
25289752
>>> aList.extend([11,13])
>>> aList
[3, 4, 5, 7, 9, 11, 13]
>>> aList.extend((15,17))
>>> aList
[3, 4, 5, 7, 9, 11, 13, 15, 17]

(4)使用列表对象的insert()方法将元素添加至列表的指定位置。

>>> aList.insert(3, 6) #在下标为3的位置插入元素6
>>> aList
[3, 4, 5, 6, 7, 9, 11, 13, 15, 17]

3.列表元素的删除

(1)使用del命令删除列表中的指定位置上的元素。

>>> a_list = [3,5,7,9,11]
>>> del a_list[1]
>>> a_list
[3, 7, 9, 11]

(2)使用列表对象的remove()方法删除首次出现的指定元素,如果列表中不存在要删除的元素,则抛出异常。

>>> a_list = [3,5,7,9,7,11]
>>> a_list.remove(7)
>>> a_list
[3, 5, 9, 7, 11]

4.列表切片操作

列表切片
切片适用于列表、元组、字符串、range对象等类型,但作用于列表时功能最强大。可以使用切片来截取列表中的任何部分,得到一个新列表,也可以通过切片来修改和删除列表中部分元素,甚至可以通过切片操作为列表对象增加元素。
切片使用2个冒号分隔的3个数字来完成:
第一个数字表示切片开始位置(默认为0)。
第二个数字表示切片截止(但不包含)位置(默认为列表长度)。
第三个数字表示切片的步长(默认为1),当步长省略时可以顺便省略最后一个冒号。
切片操作不会因为下标越界而抛出异常,而是简单地在列表尾部截断或者返回一个空列表,代码具有更强的健壮性。

>>> aList = [3, 4, 5, 6, 7, 9, 11, 13, 15, 17]
>>> aList[::]                             #返回包含所有元素的新列表
[3, 4, 5, 6, 7, 9, 11, 13, 15, 17]
>>> aList[::-1]                           #逆序的所有元素
[17, 15, 13, 11, 9, 7, 6, 5, 4, 3]
>>> aList[::2]                            #偶数位置,隔一个取一个
[3, 5, 7, 11, 15]
>>> aList[1::2]                           #奇数位置,隔一个取一个
[4, 6, 9, 13, 17]
>>> aList[3::]                            #从下标3开始的所有元素
[6, 7, 9, 11, 13, 15, 17]
>>> aList[3:6]                             #下标在[3, 6)之间的所有元素
[6, 7, 9]
>>> aList[0:100:1]                       #前100个元素,自动截断
[3, 4, 5, 6, 7, 9, 11, 13, 15, 17]
>>> aList[100:]                            #下标100之后的所有元素,自动截断
[]
>>> aList[100] 

版权属于:hierarch

本文链接:https://hiea.top/archives/122.html



—— 收到 2 条评论 ——

    2020 年 09 月 14 日 21:30

    膜拜大佬

      2020 年 09 月 14 日 21:31

      一起学习

OωO