使用List Comprehension切片列表

时间:2016-01-28 02:39:46

标签: python python-3.x list-comprehension

假设我想要1-20个20个整数,将它们放在一个列表中,每4个元素对它们进行分组。所以我试过了:

[(k[i::4]) for i in range(1,20)]

理论上,我要做的是1-20的范围,将第4步附加到列表k

应该看起来像[[1,2,3,4],[5,..,8]..[9,..,12].[13,..,16]...[17,..,20]

4 个答案:

答案 0 :(得分:2)

您只需创建更多mouseout个对象:

range

答案 1 :(得分:1)

>>>[list(range(i,i+4)) for i in range(1, 20, 4)]
[[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16], [17, 18, 19, 20]]

答案 2 :(得分:1)

尝试以下方法:

/usr/local/bin/python

答案 3 :(得分:0)

>>> k = range(1, 21)
>>> list(zip(*[iter(k)] * 4))
[(1, 2, 3, 4), (5, 6, 7, 8), (9, 10, 11, 12), (13, 14, 15, 16), (17, 18, 19, 20)]