首页 > 解决方案 > 将 Python 1D 列表转换为元组对

问题描述

一个整数列表:

[0, 6, 43, 10, 48, 1]

想把它转换成这样的元组对:

[(0, 6), (6,43), (43,10), (10,48), (48,1)]

我尝试了这个解决方案zip(shortest_path[::2], shortest_path[1::2]),但不重叠元素。例如,在上面的元组示例中,每个元素重复两次,除了第一个和最后一个。

谢谢

标签: pythonlisttuples

解决方案


使用zip和切片符号:

data = [0, 6, 43, 10, 48, 1]
output = list(zip(data, data[1:]))

[(0, 6), (6, 43), (43, 10), (10, 48), (48, 1)]

推荐阅读