在 Python 中,list 是一个可变的有序集合,可以进行增、删、改、查等操作。
增加元素
- append(): 在列表的末尾添加一个元素。
- insert(): 在指定位置插入一个元素。
- extend(): 将一个可迭代对象(如另一个列表)中的所有元素添加到当前列表。
append(x)
描述:将元素 x 添加到列表的末尾
lst = [1, 2, 3]
lst.append(4)
print(lst) # [1, 2, 3, 4]
insert(i, x)
描述:在指定位置 i 插入元素 x。
lst = [1, 3]
lst.insert(1, 2)
print(lst) # [1, 2, 3]
extend(iterable)
描述:将一个可迭代对象(如列表、元组、集合等)中的所有元素添加到列表的末尾。
lst = [1, 2]
lst.extend([3, 4, 5])
print(lst) # [1, 2, 3, 4, 5]
删除元素
- remove(): 删除列表中第一个匹配到的指定元素。
- pop(): 删除指定位置的元素(默认删除末尾元素),并返回该元素。
- del: 删除指定位置的元素或整个列表。
- clear(): 清空整个列表。
remove(x)
描述:删除列表中第一个匹配元素 x。
lst = [1, 2, 3, 2]
lst.remove(2)
print(lst) # [1, 3, 2]
pop([i])
描述:删除并返回索引 i 处的元素。如果没有提供索引,默认删除并返回最后一个元素。
lst = [1, 2, 3]
last = lst.pop()
print(last) # 3
print(lst) # [1, 2]
second = lst.pop(1)
print(second) # 2
del
描述:删除指定位置的元素,或者删除整个列表。
lst = [1, 2, 3]
del lst[1]
print(lst) # [1, 3]
del lst # 删除整个列表
# print(lst) # 抛出 NameError,列表已删除
clear()
描述:删除列表中的所有元素
lst = [1, 2, 3]
lst.clear()
print(lst) # []
修改元素
- 直接索引赋值: 通过索引直接修改指定位置的元素。
my_list = [1, 2, 3, 4, 5]
# 修改索引为2的元素
my_list[2] = 10
print(my_list) # 输出: [1, 2, 10, 4, 5]
查询元素
- 访问元素: 通过索引访问元素。
- index(): 查找元素的索引。
- count(): 统计某个元素在列表中出现的次数。
- in: 检查元素是否存在于列表中。
index(x[, start[, end]])
描述:返回列表中元素 x 的第一个匹配索引位置。如果未找到元素,会抛出 ValueError 异常。
lst = [1, 2, 3, 2]
print(lst.index(2)) # 1
print(lst.index(2, 2)) # 3 (从索引 2 开始查找)
count(x)
描述:返回元素 x 在列表中出现的次数。
lst = [1, 2, 2, 3, 2]
print(lst.count(2)) # 3
# in:判断元素是否在列表中
is_3_in_list = 3
in my_list print(is_3_in_list)
# 输出: True
列表遍历
- 使用
for
循环遍历列表。 - 使用
enumerate()
获取索引和值。
my_list = [1, 2, 3, 4, 5]
# 使用 for 循环遍历列表
for item in my_list:
print(item)
# 使用 enumerate() 遍历列表并获取索引和值
for index, value in enumerate(my_list):
print(f”Index: {index}, Value: {value}”)
其他方法
sort(key=None, reverse=False)
描述:对列表进行排序。key 用于指定排序的依据,reverse 设置为 True 可以实现降序排序。
lst = [3, 1, 2]
lst.sort()
print(lst) # [1, 2, 3]
lst.sort(reverse=True)
print(lst) # [3, 2, 1]
reverse()
描述:反转列表中的元素。
lst = [1, 2, 3]
lst.reverse()
print(lst) # [3, 2, 1]
copy()
描述:返回列表的浅拷贝(复制)。
lst = [1, 2, 3]
lst_copy = lst.copy()
print(lst_copy) # [1, 2, 3]
join()
描述:将列表中的元素连接成一个字符串,列表元素必须是字符串类型。
lst = [‘apple’, ‘banana’, ‘cherry’]
result = ‘, ‘.join(lst)
print(result) # ‘apple, banana, cherry’