用变量siz初始化二维数组

2024-04-19 21:53:00 发布

您现在位置:Python中文网/ 问答频道 /正文

使用以下方法:

myArray = [0,1] * NUM_ITEMS

所需结果(2d阵列):

[[0,1],[0,1],[0,1]...]

实际结果(扩展1d阵列):

[0,1,0,1,0,1...]

如果不使用numpy,我如何更好地实现所需的结果?你知道吗


Tags: 方法numpyitemsnummyarray
2条回答

既然您标记了数组,这里有一个使用^{}的替代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]])

列表理解应该起到以下作用:

>>> NUM_ITEMS = 5
>>> my_array = [[0, 1] for _ in range(NUM_ITEMS)]
>>> my_array
[[0, 1], [0, 1], [0, 1], [0, 1], [0, 1]]

相关问题 更多 >