![](/img/trans.png)
[英]How to test/run last iteration of loop using enumerate on a list of strings
[英]Backward iteration using for enumerate and zip
我想将列表从最后一个循环到第一个并比较相邻元素。 为了比较每两个并获得索引,我有一个前向循环:
for index, (num1, num2) in enumerate(zip(x,x[1:]))
do something
但是如何从最后一个开始循环呢?
枚举索引不能倒计时(但你可以应用简单的算术)。
您可以反转两个列表,
for idx, (num1, num2) in enumerate(zip(x[::-1], x[::-1][1:])):
... # do something
正如 gruntfutuk 指出的那样,枚举不能倒计时。 相反,您可以使用内置的范围 function 并向后工作。 这是解决问题的另一种方法:
arr = [1,3,4]
for i in range(-1, -len(arr) - 1, -1): # i will go from -1 to -3
if i > -len(arr): # i will stop at -2
if arr[i] == arr[i-1]:# compares arr[-1] to arr[-2] and arr[-2] to arr[-3]
doSomething
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.