我找不到任何(对于初学者)可读的信息。是否可以在 for 循环中的最后一项上发生事件:
array = ["foo", "bar", "john", "test"]
for item in array:
print item
LastItemEvent: forLoop + lastItem
def lastItem:
# call another function
doneWithLoop()
还是我需要增加整数计数等?可怕的例子,但我希望你们能理解。
我找不到任何(对于初学者)可读的信息。是否可以在 for 循环中的最后一项上发生事件:
array = ["foo", "bar", "john", "test"]
for item in array:
print item
LastItemEvent: forLoop + lastItem
def lastItem:
# call another function
doneWithLoop()
还是我需要增加整数计数等?可怕的例子,但我希望你们能理解。
item
将是循环结束时的最后一个元素,因为它采用数组中的每个值(实际上是列表),所以一旦完成,它将被设置为最后一个。
array = ["foo", "bar", "john", "test"]
for item in array:
print item
print "last item", item
我猜你可以使用 else 语句:
for x in range(10):
print x
else:
print x**2
来自 Python 文档:
当项目用尽时(即序列为空时立即),else 子句中的套件(如果存在)将被执行,并且循环终止。
我猜你正在做一些奇怪的事情,如果你解释你真正想做的事情,会有更好的解决方案。但是,如果你真的想做你所要求的,你可以迭代除最后一个之外的所有元素:
for item in array[:-1]:
do_something(item)
在那之后,你当然可以对最后一个元素做一些别的事情:
do_something_else(array[-1])