Python迴圈列表刪除元素問題

2022-09-16 04:51:14 字數 625 閱讀 9316

有人會遇到這種問題,遍歷列表,想刪除列表中的某幾個元素,執行後發現有些並沒有刪除到,

比如以下**

a=[1,2,3,4,5,6]

print(a)

for i in

a:

if i==3 or i==4:

a.remove(i)

print(a)

從**看主要就是想刪除a列表中的 3 4 元素,

程式的結果是:

[1, 2, 3, 4, 5]

[1, 2, 4, 5]

結果不盡人意,原因是我們在遍歷的時候

避免這個這個問題的就需要避免for迴圈,當然上面的例子可以有很多方法去刪除,但是當我們遇到乙個不能避免for迴圈的情況,可以將要刪除的元素儲存到另外乙個列表裡面,最後一併刪除.

a=[1,2,3,4,5]

d=print

(a)for i in

a:

if i==3 or i==4:

for i in

d: a.remove(i)

print

(a)#

[1, 2, 3, 4, 5]

#[1, 2, 5]

python 迴圈列表中字典元素

1.目的 實現列表中字典kay value的遍歷 迴圈列表中字典元素 info list 第一種方式 index 0 while index print name s nage s nhight s info list index name info list index age info list...

python實現迴圈列表

class loop queue2 object 實現迴圈列表 def init self,maxsize 初始化,命令頭部元素的序號,尾部元素的序號,定義序列列表 param maxsize 傳入列表的最大長度 self.queue none maxsize self.maxsize maxsiz...

python迴圈刪除列表元素

如果我們用最常用的方法使用for迴圈正向遍歷列表元素進行刪除,結果如下 一 索引遍歷列表迴圈刪除 執行結果報錯 因為for語句中range 方法按照列表a的長度生成了有序整數序列,但在遍歷過程中刪除了列表元素,實際列表長度已發生改變,而遍歷的序列仍是按原始列表的長度遍歷的,導致索引超出範圍 二 直接...