以下是我到底要:如何刪除Python中由列表讀入的當前元素?
A = [1,2,3]
for a in A:
if a > 1:
del a
print(A)
我想列出爲[1],但它仍然是[1,2,3]。
所以我真正的目標是刪除我現在得到的當前元素。
我知道有一種 '德爾' 喜歡這一個用法:
A = [1,2,3]
for i, a in enumerate(A):
if a > 1:
del A[i]
print(A)
,並列出將是[1,3],但不是[1]。
因爲當我使用
del a[1] #2
的名單A orginally 3,將需要使用索引1從一個列表,而不是使用2所以我不能成功地刪除它得到它。
如何刪除列表中的當前元素?
謝謝!這確實是我想要的,但我更想知道如何刪除當前讀取的元素。 –
@MarsLee:查看我的答案。 –
實際上,在迭代過程中,您無法修改列表的元素。您可以保存要刪除的元素或元素的索引,然後在迭代完成後刪除它們。或者,嘗試通過索引而不是元素迭代列表。 @PriyanshGoel – liushuaikobe