遍历Python列表中的相邻元素对
在Python中,是否可以用下面这种方式来遍历一个列表呢?(把这段代码当作伪代码来看待)
a = [5, 7, 11, 4, 5]
for v, w in a:
print [v, w]
而且它应该产生这样的结果
[5, 7]
[7, 11]
[11, 4]
[4, 5]
6 个回答
63
要做到这一点,你需要这样做:
a = [5, 7, 11, 4, 5]
for i in range(len(a)-1):
print [a[i], a[i+1]]
125
from itertools import tee
def pairwise(iterable):
"s -> (s0,s1), (s1,s2), (s2, s3), ..."
a, b = tee(iterable)
next(b, None)
return zip(a, b)
for v, w in pairwise(a):
...