Python无循环多维数组初始化

2024-04-26 03:50:14 发布

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


Tags: python
3条回答

一定有办法

arr = eval(`[[0]*5]*10`)

或者

arr = eval(("[[0]*5]+"*10)[:-1])

但这很可怕而且浪费,所以每个人都使用循环(通常是列表理解)或numpy

根据您的实际需要,事实上的“标准”包Numpy可能会为您提供所需的内容。

例如,可以使用

numpy.empty((10, 4, 100))  # 3D array

(用任意值初始化)或创建相同的数组

numpy.zeros((10, 4, 100))

对于阵列操作,Numpy非常快。

当然,你可以

mylist = [
            [1,2,3],
            [4,5,6],
            [7,8,9]
         ]

相关问题 更多 >