我有一个包含许多元素的列表。我想将每100个元素切片到几个列表的列表中。
例如:
>>> a = range(256)
>>> b = slice(a, 100)
b
应为[[0,1,2,...99],[100,101,102,...199],[200,201,...,255]]
。
最狡猾和最优雅的方式是什么?
答案 0 :(得分:15)
这应该可以解决问题:
[a[i:i+100] for i in range(0, len(a), 100)]
range
takes an optional third step
argument,因此range(0, n, 100)
将是0, 100, 200, ...
。