如何在Python中使用数组数组

时间:2017-09-27 01:18:03

标签: python arrays python-2.7 multidimensional-array jagged-arrays

我是python的新手,但我在vb.net中编码很扎实。我试图在锯齿状数组中保存数值;要在vb.net中执行此操作,我会执行以下操作:

Dim jag(3)() as double
For I = 0 to 3
   Redim jag(i)(length of this row)
End

现在,我知道python没有使用这样的显式声明(也许它可以,但我不知道如何!)。我尝试过这样的事情;

  

a(0)= someOtherArray

但这不起作用 - 我收到错误无法分配给函数调用。有关更顺畅的方法的建议吗?我宁愿远离使用2D矩阵,因为a(即a(0),a(1),...)的不同元素是不同的长度。

2 个答案:

答案 0 :(得分:2)

From Microsoft documentation

  

锯齿状数组是一个数组,其元素是数组。的要素   锯齿状阵列可以具有不同的尺寸和大小

关于Data Structures的Python文档。

您可以将列表存储在另一个列表或存储列表的字典中。根据数组的深度,这可能不是最佳选择。

numbersList = []

listofNumbers = [1,2,3]
secondListofNumbers = [4,5,6]

numbersList.append(listofNumbers)
numbersList.append(secondListofNumbers)

for number in numbersList:
    print(number) 

答案 1 :(得分:0)

arr = [[]]

我不确定你要做什么,动态分配python列表,但如果你想要预定义的长度和维度,请使用列表推导。

arr = [[0 for x in range(3)] for y in range(3)]