社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

Python教程:删除列表中某个元素的3种方法

马哥Linux运维 • 3 年前 • 462 次点击  


python中关于删除list中的某个元素,一般有三种方法:remove、pop、del:

1.remove: 删除单个元素,删除首个符合条件的元素,按值删除
举例说明:

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

[134526]

2.pop: 删除单个或多个元素,按位删除(根据索引删除)

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

[023456]
>>> 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

[134526]
>>> str2=['abc','bcd','dce']
>>> del str2[1]
>>> str2

['abc''dce']

除此之外,del还可以删除指定范围内的值。

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

[01456]

del 也可以删除整个数据对象(列表、集合等)




    
>>> str=[0,1,2,3,4,5,6]
>>> del str
>>> str #删除后,找不到对象

Traceback (most recent call last):
File "", line 1in 
str
NameError: name 'str' is not defined

注意:del是删除引用(变量)而不是删除对象(数据),对象由自动垃圾回收机制(GC)删除。

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

print('s1_2:', s1)

's3:', s3)

s1 = (123456)
s2 = (235)
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编程学习圈
(版权归原作者所有,侵删)

点击下方“阅读原文”查看更多

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/126130
 
462 次点击