0

我在计算机科学课上学习了关于多维数组和数组记录的理论,但我不确定如何在 Python 中实现这一点。我正在考虑使用一组记录,因为它可以让我在一个记录中拥有不同的数据类型,但同时我认为多维数组也可以在 Python 中学习。

我用谷歌搜索了一下,我找到了 numpy,但我不确定我会使用 numpy 中的哪个函数。我看到一个带有元组的,但我并不热衷于使用它,因为元组不能被修改。

我正在使用 Python 3.2,但我也不介意使用 Python 2.7。

4

2 回答 2

7

取决于你想如何与他们互动。考虑使用Numpy。具体来说,看看N-Dimensional array。它为操作和比较提供了丰富的 API。

如果 numpy 感觉有点矫枉过正,您可以使用简单的元组/列表来实现多数组。

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

>>> multi_array[0][0]
>>> multi_array[1][4]

例如,要转换multi_array为 numpy ndarray

import numpy as np
np.ndarray((2, 5), buffer=np.array(multi_array), dtype=int)

请注意, ndarray 期望它是第一个参数 a shape。这意味着您需要在创建数组之前知道数组的维度。更改 ndarray 的尺寸称为“重塑”。

于 2012-05-09T11:59:56.273 回答
1

不确定“记录”是什么意思,但您可以使用列表列表来表示二维数组。阅读文档以了解更多信息。

于 2012-05-09T12:00:56.507 回答