簡體   English   中英

Python for循環-跳到最后一個元素

[英]Python for loop - skip to last element

我們如何跳到python中的最后一個元素?

現在清除!!!!!!!!!!!!!

例如,我有一個清單

foo = ['hello', 'world','how']

而且,我有這個循環

for i in foo:
    ----------Codes to skip to last element.--------

因此,變量“ i”成為foo中的最后一個元素,即“如何”。

    if i == 'how':
       print 'success!'

是的,我想知道是否有任何方法可以在for循環中,而不是在外部。

我發現的最接近的是:

Python在使用for循環迭代列表時跳過最后一個元素

請在解釋中添加有關其工作原理的答案。

編輯:另外,如果不可能,請說明原因(可選)。

您不必在整個列表上運行:

foo = ['hello', 'world','how']

for i in foo[:-1]:
    ........

您還可以通過執行以下操作來確定是否為最后一個:

foo = ['hello', 'world','how']

for i in foo:
    if i == foo[-1]:
        print "I'm the last.."

有關列表的更多信息,您可以參考文檔

在這里有一個很好的教程

跳過最后一個元素的另一種方法

>>> for index, item in enumerate(foo):
        if index==(len(foo)-1):
            # last element 
        else:
            # Do something

我的理解是,您想檢查自己是否已經到達周期的末尾而不會中斷 Python 對於... elsewhile..else構造而言都是很漂亮 else子句在循環完成而不會中斷時使用,以便代碼框架:

for word in foo:
   ... you may break out
else:
    print success

簡單優雅(效率更高)

編輯:好的,現在我得到了你想要的。 您可以使用切片-如建議的那樣,但是itertools的 islice會做得更好:

from itertools import islice:
for word in islice(foo, len(foo)-1):

暫無
暫無

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

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