在列表中添加和删除元素的常用方法有哪些?

阅读 45

08-04 06:00

在 Python 中,列表(List)添加和删除元素的常用方法如下:

添加元素

方法

描述

示例代码

append(x)

在列表末尾添加单个元素 x

fruits.append("orange")

extend(iter)

将可迭代对象(如列表、元组)的所有元素添加到列表末尾。

fruits.extend(["kiwi", "mango"])

insert(i, x)

在指定索引 i 处插入元素 x,原索引及后续元素后移。

fruits.insert(1, "lemon")

+=

等同于 extend(),但会修改原列表。

fruits += ["grape", "apple"]

删除元素

方法

描述

示例代码

remove(x)

删除列表中第一个值为 x

fruits.remove("apple")

pop([i])

删除并返回指定索引 i 的元素。若省略 i,则默认删除最后一个元素。

popped = fruits.pop(1)

del lst[i]

直接删除指定索引 i 的元素,或通过切片删除多个元素。

del fruits[0]del fruits[1:3]

clear()

清空列表中的所有元素,列表变为空列表 []

fruits.clear()

高级技巧

  1. 批量添加元素(列表拼接)

lst = [1, 2]
lst = lst + [3, 4]  # 结果:[1, 2, 3, 4]

  1. 根据条件删除元素(使用列表推导式):

nums = [1, 2, 3, 4, 5]
nums = [x for x in nums if x != 3]  # 结果:[1, 2, 4, 5]

  1. 删除重复元素(转为集合再转回列表):

lst = [1, 2, 2, 3]
lst = list(set(lst))  # 结果:[1, 2, 3](顺序可能改变)

性能注意事项

  • 头部操作效率低insert(0, x)pop(0) 需要移动所有后续元素,时间复杂度为 O(n)。若需频繁头部操作,建议使用 collections.deque
  • 删除中间元素remove()pop(i) 对中间元素的删除效率较低(O(n)),尽量避免在大数据量列表中频繁使用。

示例代码演示

# 添加元素
fruits = ["apple", "banana"]
fruits.append("cherry")       # ['apple', 'banana', 'cherry']
fruits.extend(["date", "elder"])  # ['apple', 'banana', 'cherry', 'date', 'elder']
fruits.insert(1, "berry")     # ['apple', 'berry', 'banana', 'cherry', 'date', 'elder']

# 删除元素
fruits.remove("banana")       # ['apple', 'berry', 'cherry', 'date', 'elder']
popped = fruits.pop(2)        # 删除 'cherry',返回 'cherry'
del fruits[0]                 # ['berry', 'date', 'elder']
fruits.clear()                # []

总结

  • 添加元素:优先使用 append()extend(),插入特定位置用 insert()
  • 删除元素:按值删除用 remove(),按索引删除用 pop()del,清空列表用 clear()
  • 性能优化:避免在大数据量列表的头部或中间频繁操作,考虑使用 deque 替代。

精彩评论(0)

0 0 举报