python for循环删除
【摘要】 python for循环遍历时,能动态删除元素吗?本文讲给你答案。
先来上个代码:
# -*- coding:utf-8 -*-list = [1,2,3,4,5,6,7,8] # 使用for 删除某个元素for i in list: if i == 3 or i == 4: list.remove(i) print(list)
分析:
当我们在for ...
python for循环遍历时,能动态删除元素吗?本文讲给你答案。
先来上个代码:
-
# -*- coding:utf-8 -*-
-
list = [1,2,3,4,5,6,7,8]
-
-
# 使用for 删除某个元素
-
for i in list:
-
if i == 3 or i == 4:
-
list.remove(i)
-
-
print(list)
- 分析:
当我们在for
循环里删除多个值的时候,发现只删除了第一个.后面的值没有删除成功. 分析过后发现 当for
循环到if i == 33 or i == 44
当i
的值为33
时满足条件,这时候就会去删除 list
列表里的33
, 删除过后后面的值就会把前面的空位填起来.这时候44
的key
就发生了改变.44
的key
位置就变成了33
以前key
的位置,这样44
就会删除不到了.
删除3个值
-
# -*- coding:utf-8 -*-
-
-
list = [1,2,3,4,5,6,7,8]
-
-
# 使用for 删除某个元素
-
-
for i in list:
-
-
if i == 3 or i == 4 or i== 5:
-
-
list.remove(i)
-
-
print(list)
- <
文章来源: blog.csdn.net,作者:网奇,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/jacke121/article/details/115311876
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)