如何在python中定义数组?

时间:2010-04-09 10:55:45

标签: python arrays

我想在python中定义一个数组。我该怎么办?我必须使用清单吗?

5 个答案:

答案 0 :(得分:5)

通常你会使用一个列表。如果您真的想要一个数组,可以导入array

import array
a = array.array('i', [5, 6]) # array of signed ints

如果您想使用多维数组,可以尝试numpy

答案 1 :(得分:4)

列表更好,但你可以使用这样的数组:

array('l')
array('c', 'hello world')
array('u', u'hello \u2641')
array('l', [1, 2, 3, 4, 5])
array('d', [1.0, 2.0, 3.14])

更多信息there

答案 2 :(得分:4)

为什么要在列表中使用数组?这是comparison of the two,它清楚地说明了列表的优点。

答案 3 :(得分:3)

Python中有几种类型的数组,如果你想要一个经典数组,它将与数组模块一起使用:

import array
a = array.array('i', [1,2,3])

但您也可以使用元组而无需导入其他模块:

t = (4,5,6)

或列出:

l = [7,8,9]

元组在使用中效率更高,但它具有固定的大小,而您可以轻松地将新元素添加到列表中:

>>> l.append(10)
>>> l
[7, 8, 9, 10]
>>> t[1]
5
>>> l[1]
8

答案 4 :(得分:1)

如果你需要一个数组,因为你正在使用其他低级构造(比如在C中),你可以使用ctypes。

import ctypes
UINT_ARRAY_30 = ctypes.c_uint*30 # create a type of array of uint, length 30
my_array = UINT_ARRAY_30()
my_array[0] = 1
my_array[3] == 0