从列表L创建(L [i],L [i + 1])元组列表

roo*_*kie 3 python

假设我们有一个清单L = [1,2,3,4,5].是否有一种干净的方法来制作以下形式的元组列表:T = [(1,2),(2,3),(3,4),(4,5)]

如果有更好的替代方案,那就太好了

    T = []
    for i in range(len(L) - 1):
        T.append((L[i], L[i+1]))
Run Code Online (Sandbox Code Playgroud)

或者等同的理解.

mus*_*_ut 10

您可以使用内置zip功能:zip(L, L[1:])

In [4]: L = [1,2,3,4,5]

In [5]: zip(L, L[1:])
Out[5]: [(1, 2), (2, 3), (3, 4), (4, 5)]
Run Code Online (Sandbox Code Playgroud)