python for循环删除

举报
风吹稻花香 发表于 2021/06/05 01:18:27 2021/06/05
【摘要】 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&nbsp...

python for循环遍历时,能动态删除元素吗?本文讲给你答案。

先来上个代码:


  
  1. # -*- coding:utf-8 -*-
  2. list = [1,2,3,4,5,6,7,8]
  3. # 使用for 删除某个元素
  4. for i in list:
  5. if i == 3 or i == 4:
  6. list.remove(i)
  7. print(list)
  1. 分析:

当我们在for 循环里删除多个值的时候,发现只删除了第一个.后面的值没有删除成功. 分析过后发现 当for 循环到
if i == 33 or i == 44 当i 的值为33时满足条件,这时候就会去删除 list 列表里的33 , 删除过后后面的值就会把前面的空位填起来.这时候44key就发生了改变.44key位置就变成了33以前key的位置,这样44就会删除不到了.

删除3个值


  
  1. # -*- coding:utf-8 -*-
  2. list = [1,2,3,4,5,6,7,8]
  3. # 使用for 删除某个元素
  4. for i in list:
  5. if i == 3 or i == 4 or i== 5:
  6. list.remove(i)
  7. print(list)
  1. <

文章来源: blog.csdn.net,作者:网奇,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/jacke121/article/details/115311876

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。