Python 删除 List 元素的三种方法:remove、pop 与 del 详解

一只小鹿
一只小鹿
发布时间:2026-10-12| 2人浏览过
原创

本文详细介绍 Python 中删除列表元素的三种常用方法:remove、pop 和 del。remove 按值删除首个匹配元素;pop 按索引删除并返回被删元素;del 根据索引或范围删除,也可用于删除整个变量引用。文章通过具体代码示例对比三者的行为差异,并补充了通过遍历生成新列表的变相删除技巧,帮助开发者根据实际需求选择合适的方法。

1. remove:用于删除单个元素。该方法会查找列表中首个符合条件的值,并按值进行删除,处理顺序为从左向右依次匹配并删除符合条件的元素。

具体操作示例如下:

>>> str=[1,2,3,4,5,2,6]
>>> str.remove(2)
>>> str
[1, 3, 4, 5, 2, 6]

2. pop:用于删除单个或多个元素。该方法依据索引位置进行删除操作。

>>> str=[0,1,2,3,4,5,6]
>>> str.pop(1)  #pop删除时会返回被删除的元素
1
>>> str
[0, 2, 3, 4, 5, 6]
>>> str2=['abc','bcd','dce']
>>> str2.pop(2)
'dce'
>>> str2
['abc', 'bcd']

3. del:依据元素的索引位置(即元素在列表中的具体位置)来执行删除操作。

具体操作示例如下:

>>> str=[1,2,3,4,5,2,6]
>>> del str[1]
>>> str
[1, 3, 4, 5, 2, 6]
>>> str2=['abc','bcd','dce']
>>> del str2[1]
>>> str2
['abc', 'dce']

此外,del 还支持删除指定索引范围内的元素。

>>> str=[0,1,2,3,4,5,6]
>>> del str[2:4] #删除从第2个元素开始,到第4个为止的元素(但是不包括尾部元素)
>>> str
[0, 1, 4, 5, 6]

del 同样可以用于删除整个数据对象,例如列表、集合等。

>>> str=[0,1,2,3,4,5,6]
>>> del str
>>> str     #删除后,找不到对象
Traceback (most recent call last):
 File "<pyshell#27>", line 1, in <module>
  str
NameError: name 'str' is not defined

需要注意的是:del 删除的是变量的引用(即变量名与对象的关联),而非直接删除对象本身。被删除引用的对象将由自动垃圾回收机制(GC)负责清理。

补充:删除元素的变相实现方法。

s1=(1,2,3,4,5,6)
s2=(2,3,5)
s3=[]
for i in s1:
if i not in s2:
  s3.append(i)
print 's1-1:',s1
s1=s3
print 's2:',s2
print 's3:',s3
print 's1-2:',s1 

至此,关于 Python 中删除 List 元素的三种方法(remove、pop、del)的介绍已完成。如需了解更多 Python 列表元素删除相关内容,建议查阅本站过往文章或继续浏览后续教程,感谢大家的支持!

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。