如何在Python中声明数组?


当前回答

Python称它们为列表。你可以用方括号和逗号写一个列表文字:

>>> [6,28,496,8128]
[6, 28, 496, 8128]

其他回答

这样如何……

>>> a = range(12)
>>> a
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
>>> a[7]
6

我认为你(意思是)想要一个列表与前30个单元格已经填补。 所以

   f = []

   for i in range(30):
       f.append(0)

斐波那契数列就是一个例子。 参见Project Euler中的问题2

JohnMachin的评论才是真正的答案。 在我看来,所有其他答案都只是变通方法! 所以:

array=[0]*element_count
# This creates a list of 5000 zeros
a = [0] * 5000  

您可以像使用数组一样,使用[n]符号读取和写入此列表中的任何元素。

它似乎具有与数组相同的随机访问性能。我不能说它如何分配内存,因为它还支持不同类型的混合,包括字符串和对象,如果你需要的话。

您可以创建列表并将其转换为数组,或者您可以使用numpy模块创建数组。下面是几个例子来说明这一点。Numpy还使使用多维数组变得更容易。

import numpy as np
a = np.array([1, 2, 3, 4])

#For custom inputs
a = np.array([int(x) for x in input().split()])

您还可以使用使用输入作为矩阵维数的重塑函数将该数组重塑为2X2矩阵。

mat = a.reshape(2, 2)