首页 > 解决方案 > 从列表创建列表列表,其中一个列表是原始列表的 2 个元素

问题描述

我有一个巨大的列表,想从中列出一个列表。例如:

[2,3,4,5,6,2,8,9,11,10]------> [[2,3],[4,5],[6,2],[8,9],[11,10]]

我怎样才能在 Python 中实现这一点?

标签: python

解决方案


您可以为此使用zip()和切片([::]某种东西):

li = list(range(19))
>>>[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18]
list(zip(li[::2],li[1::2]))
>>>[(0, 1),
 (2, 3),
 (4, 5),
 (6, 7),
 (8, 9),
 (10, 11),
 (12, 13),
 (14, 15),
 (16, 17)]

请注意,如果列表是偶数,它将忽略最后一个值...如果您更喜欢其他方式,请查看@Wasif-Hasan 答案...


推荐阅读