Python for循环-跳到最后一个元素

Python for循环-跳到最后一个元素,python,for-loop,Python,For Loop,如何跳到python中的最后一个元素 现在天气晴朗了 例如,我有一个列表 foo = ['hello', 'world','how'] 我有一个循环 for i in foo: ----------Codes to skip to last element.-------- 因此,变量“i”成为foo中的最后一个元素,即“how” if i == 'how': print 'success!' 是的,我想知道是否有任何方法可以在for循环中而不是在外部这样做

如何跳到python中的最后一个元素

现在天气晴朗了

例如,我有一个列表

foo = ['hello', 'world','how']
我有一个循环

for i in foo:
    ----------Codes to skip to last element.--------
因此,变量“i”成为foo中的最后一个元素,即“how”

    if i == 'how':
       print 'success!'
是的,我想知道是否有任何方法可以在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.."
有关列表的更多信息,请参阅


您有一个非常好的教程

您不必在整个列表上运行:

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

另一种跳过最后一个元素的方法

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

我的理解是,你想检查你是否已经到达了周期的终点,而没有打破它。Python有漂亮的for…else和while…else结构。 else子句在循环完成而不中断时使用 因此,代码的框架:

for word in foo:
   ... you may break out
else:
    print success
简单优雅(也更高效)

编辑: 好了,现在我得到你想要的了。您可以使用切片-正如建议的那样,但islice of itertools会做得更好:

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

我的理解是,你想检查你是否已经到达了周期的终点,而没有打破它。Python有漂亮的for…else和while…else结构。 else子句在循环完成而不中断时使用 因此,代码的框架:

for word in foo:
   ... you may break out
else:
    print success
简单优雅(也更高效)

编辑: 好了,现在我得到你想要的了。您可以使用切片-正如建议的那样,但islice of itertools会做得更好:

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


不,但在for循环中可能吗?我的意思是在循环内部,而不是在循环上,替换问题中给出的代码中的注释行。我希望变量I跳到循环中的最后一个字符。@leono由于您正在迭代列表项,所以没有字符!请尝试编辑您的问题,并给出一些示例,以便易于理解。不,但在for循环中可能吗?我的意思是在循环中,而不是在循环中,替换问题中给出的代码中的注释行。我希望变量I跳到循环中的最后一个字符。@leono由于您正在迭代列表中的项目,因此没有字符!请尝试编辑您的问题,并给出一些示例,以便易于理解。为什么要列举?你能解释一下吗?枚举将使某些循环更清晰。您将获得该项的索引以及序列中的项。由于您需要跳过最后一个元素,我已获取索引并将其与列表的长度进行比较,以跳过最后一个为什么枚举?你能解释一下吗?枚举将使某些循环更清晰。您将获得该项目的索引以及序列中的项目。由于您需要跳过最后一个元素,我已获取索引并将其与列表的长度进行比较,以跳过最后一个什么突破?你是什么意思?在循环中,如果出现以下情况,你可以输入代码:break。这意味着,如果条件某物的计算结果为真,则循环将立即中断。这仅供每个人参考。我确保他们可以添加他们想要的所有内容。此外,您还可以帮助编辑,因为评论中不清楚是什么突破?你是什么意思?在循环中,如果出现以下情况,你可以输入代码:break。这意味着,如果条件某物的计算结果为真,则循环将立即中断。这仅供每个人参考。我确保他们可以添加他们想要的所有内容。此外,您还可以帮助编辑,因为从注释中不清楚,如果要跳到最后一个元素,那么为什么要使用
for
循环?为什么不直接用
foo[-1]
@做点什么呢?我只想学更多的方法!!!如果要跳到最后一个元素,那么为什么要使用
for
循环?为什么不直接用
foo[-1]
@做点什么呢?我只想学更多的方法!!!