使用以下方法:
myArray = [0,1] * NUM_ITEMS
所需结果(二维数组):
[[0,1],[0,1],[0,1]...]
实际结果(扩展的1d数组):
[0,1,0,1,0,1...]
如何最好不使用numpy来获得所需的结果?
答案 0 :(得分:5)
列表理解应该可以解决问题:
>>> NUM_ITEMS = 5
>>> my_array = [[0, 1] for _ in range(NUM_ITEMS)]
>>> my_array
[[0, 1], [0, 1], [0, 1], [0, 1], [0, 1]]
答案 1 :(得分:1)
自从您标记了数组以来,这是使用numpy.tile
的另一种numpy
解决方案。
>>> import numpy as np
>>> NUM_ITEMS = 10
>>> np.tile([0, 1], (NUM_ITEMS, 1))
array([[0, 1],
[0, 1],
[0, 1],
[0, 1],
[0, 1],
[0, 1],
[0, 1],
[0, 1],
[0, 1],
[0, 1]])