python_循环删除list中的元素,有坑啊!
生活随笔
收集整理的這篇文章主要介紹了
python_循环删除list中的元素,有坑啊!
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
循環(huán)list刪除其元素,有坑!
看個例子:
a = [1,2,3,4,5,6] for i in a:a.remove(i) print(a) 返回:[2, 4, 6]循環(huán)a,想刪除a的所有元素,但實際確有數據保留了下來,這是為什么呢,為什么呢!!!
因為在循環(huán)a,并刪除a的元素時,列表的位置發(fā)生了移位,當刪除“1”后,第二個元素“2”補位,這樣“2”就躲過了被刪除的命運,輪到“3”了,“3”被刪除之后,“4”來補位,逃過一劫,以此類推!!
所以在循環(huán)list時,不能循環(huán)的同時刪除自身元素
解決的辦法:新建一個相同的臨時列表,用for循環(huán)臨時列表,刪除原列表中的元素!
例子:
''' 遇到問題沒人解答?小編創(chuàng)建了一個Python學習交流QQ群:579817333 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書! ''' b = [1,2,2,4,3,2,1,6,8] c = b[:] for i in c:if i%2 ==0:b.remove(i) print(b) 返回 [1, 3, 1]總結
以上是生活随笔為你收集整理的python_循环删除list中的元素,有坑啊!的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python函数后面有多个括号怎么理解?
- 下一篇: Python中json模块,字典和字符串