我已經在計算機科學課上了解了關於多維數組的記錄&數組的記錄,但我不確定如何在Python中實現它。我正在考慮使用一組記錄,因爲它可以讓我在一條記錄中擁有不同的數據類型,但同時我認爲多維數組在Python中學習也很好。如何在Python中實現多維數組或數組記錄?
我已經google了一下&我已經找到了numpy,但我不確定在numpy中使用哪個函數。我看到一個元組,但我並不熱衷於使用它,因爲元組無法修改。
我正在使用Python 3.2,但我並不介意使用Python 2.7。
我已經在計算機科學課上了解了關於多維數組的記錄&數組的記錄,但我不確定如何在Python中實現它。我正在考慮使用一組記錄,因爲它可以讓我在一條記錄中擁有不同的數據類型,但同時我認爲多維數組在Python中學習也很好。如何在Python中實現多維數組或數組記錄?
我已經google了一下&我已經找到了numpy,但我不確定在numpy中使用哪個函數。我看到一個元組,但我並不熱衷於使用它,因爲元組無法修改。
我正在使用Python 3.2,但我並不介意使用Python 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希望,因爲它是第一個參數shape
。這意味着您在創建之前需要知道數組的維數。改變ndarray的尺寸被稱爲'重塑'。
Numpy的+1。使用常規維度的多維數組Numpy不是一個過度殺傷。 – eumiro
不確定您的意思是「記錄」,但您可以使用列表列表來表示二維數組。閱讀docs瞭解更多信息。
通過記錄數組,您指的是我假設的類的數組。 – jamylak
列表有什麼問題? – aquavitae
@aquavitae我只是想知道除了使用列表還有其他選項。我正在努力學習新的東西。 –