2016-05-31 188 views
-1

列表中,我將刪除第三項,第六項,第九項,a等。
例如,對於下面的列表,我將刪除項目30和60.總結,如何在列表中找到3的倍數並將其刪除? 這是我的代碼:刪除列表中的特定項目

評論= [80,20,30,40,50,60]

A = [comments.pop(i) for i, item in enumerate(comments) if i % 3 == 2] 
print A 

我有兩個問題:第一 ,公正包括30

[30] 

秒,我不知道如何從python中的評論中減去A.
請幫忙,謝謝!

+0

的輸出是什麼,你期待? –

+1

你能否提供一些關於刪除30和60的過程的細節?在什麼條件下? (如果不是,你可以只是'.remove()') –

+0

要擴展到@MoonCheesez評論,那麼刪除30,60 –

回答

1

comments = [80,20,30,40,50,60]

如果你想刪除元素如。 30和60

remove_list = [30, 60] 

for remove_value in remove_list: 
    comments.remove(remove_value) 

print(comments) 

[80, 20, 40, 50]

編輯:

remove_index = [] 

for remove_value in remove_list: 
    remove_index.append(comments.index(remove_value)) 

for remove_value in remove_list: 
    comments.remove(remove_value) 

我沒有一個更優雅的方式沒有避免2環路

+0

@感謝EdWhyte,問題是:我應該先找到項目3,項目6,項目9,項目12等,然後將其刪除。 ,你能告訴我如何找到列表中的風箏項目 – Mary

+0

@Mary我添加了一個for循環來找到索引之前他們被刪除 – EDWhyte

+0

謝謝!問題是,我不知道列表中的第3,第6,第12,...的價值是什麼。另外,我不知道列表的長度。這就是爲什麼我雖然我應該使用下面的代碼:「A = [comments.pop(我)爲我,項目在枚舉(評論)如果我%3 == 2]」。但是,它無法捕捉第6項。 – Mary