使用不是列表长度的可整除因子的形状重塑

aar*_*qli 1 python numpy

我会用一种简单的方法(最好是一行)来重塑列表

[1,2,3,4,5,6,7,8,9,10,"prime"]
Run Code Online (Sandbox Code Playgroud)

进入

[[1,2],[3,4],[5,6],[7,8],[9,10],["prime"]]
Run Code Online (Sandbox Code Playgroud)

或者

[[1,2,3],[4,5,6],[7,8,9],[10,"prime"]]
Run Code Online (Sandbox Code Playgroud)

或者

[[1,2,3,4],[5,6,7,8],[9,10,"prime"]]
Run Code Online (Sandbox Code Playgroud)

...

因为我传递了不同的参数(上面的例子是 2,3,4)。

numpy.reshape 不能这样做,因为列表的长度不能被 2,3,4 整除。

Fre*_*Foo 5

>>> l = [1,2,3,4,5,6,7,8,9,10,"prime"]
>>> [l[i:i+2] for i in xrange(0, len(l), 2)]
[[1, 2], [3, 4], [5, 6], [7, 8], [9, 10], ['prime']]
>>> [l[i:i+3] for i in xrange(0, len(l), 3)]
[[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 'prime']]
>>> [l[i:i+4] for i in xrange(0, len(l), 4)]
[[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 'prime']]
Run Code Online (Sandbox Code Playgroud)