开发者社区> 曲~线> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

5.1、python remove和del的区别,python 循环删除元素

简介: l = [1,2,3,4] l1 = l l.remove(2) print (l) print (l1) 结果为: [1,3,4] [1,3,4] 原因是因为python中的赋值其实只是给了一个存该值的地址,remove的删除是将该地址上的值删掉了,...
+关注继续查看

l = [1,2,3,4]

l1 = l

l.remove(2)

print (l)

print (l1)

结果为:

[1,3,4]

[1,3,4]

原因是因为python中的赋值其实只是给了一个存该值的地址,remove的删除是将该地址上的值删掉了,如果使用del的话就不会出现这种情况,因为del是根据索引删除,

只删除本数组下该索引的位置

l = [1,2,3,4]

for i in l:

if i != 4:

    l.remove(i)

print (l)

结果为[2,4]

原因是romove删除元素时会将原来存该元素的空间删掉,然后下一个元素自动递补到前面,同时长度减一。

循环删除容易出现数组越界的情况,这时候不能使用索引进行循环:

for i in range(0,len(a)):

if(a[i] == 3)

del.a[i]

如果这样进行删除,一定会出现索引out index的情况。

要使用分片的方式:

l = [1,2,2,3,2,4]

for x in l[:]:

    if (x == 2):

        l.remove(x)

print(l)

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
7_python基础—while循环应用1-100累加和
7_python基础—while循环应用1-100累加和
75 0
猪行天下之Python基础——4.1 条件判断与循环
内容简述: 1、条件判断 2、循环
20 0
Python基础06 循环
原文:Python基础06 循环 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢!   循环用于重复执行一些程序块。从上一讲的选择结构,我们已经看到了如何用缩进来表示程序块的隶属关系。
802 0
Python基础06 循环
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢!   循环用于重复执行一些程序块。从上一讲的选择结构,我们已经看到了如何用缩进来表示程序块的隶属关系。
643 0
Python基础(条件判断和循环) if elif else for while break continue;
条件判断 计算机之所以能做很多自动化的任务,因为它可以自己做条件判断。 比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,用if语句实现: age = 20 if age >= 18: print('your age is', age) print('adult') 根据Python的缩进规则,如果if语句判断是True,就把缩进的两行print语句执行了,否则,什么也不做。
2086 0
python编程-22:BeautifulSoup库入门
python编程-22:BeautifulSoup库入门
20 0
python编程-17:turtle绘制时钟程序
python编程-17:turtle绘制时钟程序
20 0
python编程-16:tkinter绘制聊天窗口_
python编程-16:tkinter绘制聊天窗口_
19 0
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
Python系列直播第一讲——Python中的一切皆对象
立即下载
Python第五讲——关于爬虫如何做js逆向的思路
立即下载
Python 脚本速查手册
立即下载