列表或元组的成对遍历

2024-04-20

a = [5, 66, 7, 8, 9, ...]

是否可以进行迭代而不是这样写?

a[1] - a[0]

a[2] - a[1]

a[3] - a[2]

a[4] - a[3]

...

谢谢你!


用起来没问题range。然而,编程(如数学)是建立在抽象之上的。连续对[(x0, x1), (x1, x2), ..., (xn-2, xn-1)], 叫做成对组合。请参阅中的示例迭代工具文档 https://docs.python.org/3/library/itertools.html#itertools.pairwise。一旦你的工具集中有了这个函数,你就可以编写:

for x, y in pairwise(xs):
    print(y - x)

或者用作生成器表达式:

consecutive_diffs = (y - x for (x, y) in pairwise(xs))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

列表或元组的成对遍历 的相关文章

随机推荐