0
点赞
收藏
分享

微信扫一扫

DAY1:学习python的第一天

北溟有渔夫 2022-03-17 阅读 49
pythonlist

关于列表的删除:
li1=[5,6,5,6,5,6,5,6]

for i in li1:
    if i==5:
        li1.remove(i)
>>>li1=[6,6,6,6]

li2=[5,6,5,6,5,5,5]
for i in li1:
    if i==5:
        li1.remove(i)
>>>li2=[6,6,5]
因为如果从列表中间删除元素,列表会收缩,被删除元素的后面的元素会向前移动,该元素之后的元素的索引就全变了
正确改法:
for i in range(len(li2)-1,-1,-1):
    if li2[i]==5:
        del li2[i]
>>>li2=[6,6]

举报

相关推荐

0 条评论