我有这个清单:l = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20 ]我想迭代它,打印像
这样的东西0: [1,2,3,4]
1: [2,3,4,5]
2: [3,4,5,6]
...
n: [17,18,19,20]
到目前为止,我使用此代码一次打印5个元素,但最后一次迭代打印3:
for index, item in enumerate(l):
if index == 0 or index == 1 or index == 2:
continue
print index, l[index - 3:index + 2]
我该如何解决这个问题?
答案 0 :(得分:3)
您的列表切片正确。这是一个让它变得更容易的调整:
sub_len = 4
for i in range(len(mylist) - sub_len + 1):
print l[i:i + sub_len]
其中sub_len
是您打印的切片所需的长度。