簡體   English   中英

如何在某個索引處中斷while循環,然后運行到列表末尾?

[英]How to break while loop at a certain index but then run until end of a list?

我有下面的代碼,我希望運行 while 循環以從列表中刪除特定值,但不在某個索引上刪除它,並且仍然循環整個列表而不刪除該特定事件。

a = 20
i = [5, 15, 20, 25, 50, 20, 80, 90, 20]
while a in i:
   i.remove(a)
    if a == i.index(5):
       continue
  print(i)

也許它不應該用 while 循環來完成,但自從學習了 break 或 continue 函數后,我想試一試。 謝謝!

通常,您可以通過列表理解來解決一些問題:

[ el for i, el in enumerate(lst) if i == 3 or el != 25]

在循環原始列表時創建一個新列表,並添加所有不是 25 的元素(您要刪除的那個),但如果 i==3 仍會添加它,即受保護的 position。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM