Skip to main content
 首页 » 编程设计

python之在 python 中将列表分解为重叠的元组列表

2025年05月04日18lyj

假设我有:

path1 = [0,3,1] 
path2 = [0, 3, 2, 1] 

我想要

splitsOfPath1 = [(0,3), (3,1)] 
splitsOfPath2 = [(0,3), (3, 2), (2, 1)] 

如何实现?我阅读路径的方式是从 0 到 1,你需要访问 3。但是要分解它,从 0 到 1。你需要从 0 到 3 (0,3),然后从 3 到1 (3, 1)

请您参考如下方法:

您可以使用 zip和 Explain Python's slice notation :

>>> path1 = [0, 3, 1] 
>>> splitsOfPath1 = zip(path1, path1[1::]) 
>>> splitsOfPath1 
[(0, 3), (3, 1)] 
>>> 
>>> path2 = [0, 3, 2, 1] 
>>> splitsOfPath2 = zip(path2, path2[1::]) 
>>> splitsOfPath2 
[(0, 3), (3, 2), (2, 1)] 
>>>