1. 列表概述
在Python中,列表(list)是一种普通的序列类型,它可以存储多个元素,可以是不同类型的元素,而且可以动态操作。Python列表是一个非常常用的数据结构,几乎在任何场景下都可以用到。
列表的定义使用方括号 [] 来包裹元素,并使用逗号来分隔每个元素。如下示例:
# 创建一个包含多个元素的列表
my_list = [1, 2, 'three', 4.0]
可以看到,上述示例中,my_list 代表一个列表,它包含4个元素: 1, 2, 'three', 4.0。注意:列表中的元素可以是不同类型的。
2. 列表的索引与切片
2.1 索引
列表是一个序列类型,因此我们可以通过 索引 来访问列表元素。列表中的第一个元素的索引为0,以此类推,最后一个元素的索引为列表长度减一(即 len(my_list) - 1)。下面是一个例子:
# 访问列表中的第3个元素
print(my_list[2]) # 'three'
# 访问列表中的最后一个元素
print(my_list[-1]) # 4.0
2.2 切片
除了通过索引来访问单个元素以外,我们还可以通过 切片 来访问列表的子集。切片操作使用两个索引之间的冒号(:)来指定需要访问的元素范围。范围的右端点是不包含在内的,也就是 [a:b] 取到的元素为[a, ..., b-1]。下面是一个例子:
# 访问前3个元素
print(my_list[:3]) # [1, 2, 'three']
# 访问第2到第3个元素
print(my_list[1:3]) # [2, 'three']
# 访问后2个元素
print(my_list[-2:]) # ['three', 4.0]
3. 列表的基本操作
3.1 增加元素
在Python中,我们可以通过 append 方法向列表末尾添加一个元素。
# 向列表末尾添加一个元素
my_list.append('five')
print(my_list) # [1, 2, 'three', 4.0, 'five']
除了使用 append 方法以外,我们还可以使用 extend 方法,将一个列表中的所有元素添加到另一个列表中。
# 将另一个列表中所有元素添加到当前列表末尾
another_list = [6, 7, 8]
my_list.extend(another_list)
print(my_list) # [1, 2, 'three', 4.0, 'five', 6, 7, 8]
我们也可以使用 insert 方法在指定位置插入一个元素。
# 在第2个位置插入元素
my_list.insert(1, 'new')
print(my_list) # [1, 'new', 2, 'three', 4.0, 'five', 6, 7, 8]
3.2 删除元素
我们可以使用 remove 方法从列表中删除指定的元素。如果列表中有多个相同的元素,只会删除第一个匹配的元素。
# 删除第一个匹配的元素
my_list.remove('three')
print(my_list) # [1, 'new', 2, 4.0, 'five', 6, 7, 8]
我们还可以使用 pop 方法删除列表中指定位置的元素,并返回删除的元素。如果没有指定位置,则默认删除最后一个元素。
# 删除第3个元素
elem = my_list.pop(2)
print(elem) # 2
print(my_list) # [1, 'new', 4.0, 'five', 6, 7, 8]
# 删除最后一个元素
elem = my_list.pop()
print(elem) # 8
print(my_list) # [1, 'new', 4.0, 'five', 6, 7]
3.3 修改元素
我们可以直接使用索引来修改列表中的元素。
# 修改第1个元素
my_list[0] = 9
print(my_list) # [9, 'new', 4.0, 'five', 6, 7]
4. 列表的常用函数
4.1 len()
可以使用 len 内置函数来获取列表的长度。
# 获取列表长度
print(len(my_list)) # 6
4.2 sorted()
可以使用 sorted 内置函数来对列表进行排序,不过需要注意的是,sorted 函数返回的是一个新列表,并不改变原列表。
# 对列表进行排序
new_list = sorted(my_list)
print(new_list) # [4.0, 6, 7, 'five', 'new', 9]
print(my_list) # [9, 'new', 4.0, 'five', 6, 7]
4.3 reversed()
可以使用 reversed 内置函数来将列表逆序,同样也不会改变原列表。
# 将列表逆序
new_list = list(reversed(my_list))
print(new_list) # [7, 6, 'five', 4.0, 'new', 9]
print(my_list) # [9, 'new', 4.0, 'five', 6, 7]
以上内容是 Python 列表list的操作相关知识小结。列表在Python中可以说是应用最广的数据结构之一,几乎在任何场景下都可以用到。掌握 Python 列表的相关操作非常有用,希望这篇文章能对您有所帮助。