NumPy 中定義的最重要的物件是稱為 ndarray
的 N 維陣列型別。 它描述相同型別的元素集合。 可以使用基於零的索引存取集合中的專案。
ndarray
中的每個元素在記憶體中使用相同大小的塊。 ndarray
中的每個元素是資料型別物件的物件(稱為 dtype
)。
從ndarray
物件提取的任何元素(通過切片)由一個陣列標量型別的 Python 物件表示。 下圖顯示了ndarray
,資料型別物件(dtype
)和陣列標量型別之間的關係。
ndarray
類的範例可以通過本教學後面描述的不同的陣列建立例程來構造。 基本的ndarray
是使用 NumPy 中的陣列函式建立的,如下所示:
numpy.array
它從任何暴露陣列介面的物件,或從返回陣列的任何方法建立一個ndarray。
numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)
上面的構造器接受以下引數:
序號 | 引數及描述 |
---|---|
1. | object 任何暴露陣列介面方法的物件都會返回一個陣列或任何(巢狀)序列。 |
2. | dtype 陣列的所需資料型別,可選。 |
3. | copy 可選,預設為true ,物件是否被複製。 |
4. | order C (按行)、F (按列)或A (任意,預設)。 |
5. | subok 預設情況下,返回的陣列被強制為基礎類別陣列。 如果為true ,則返回子類。 |
6. | ndimin 指定返回陣列的最小維數。 |
看看下面的例子來更好地理解。
import numpy as np
a = np.array([1,2,3])
print a
輸出如下:
[1, 2, 3]
# 多於一個維度
import numpy as np
a = np.array([[1, 2], [3, 4]])
print a
輸出如下:
[[1, 2]
[3, 4]]
# 最小維度
import numpy as np
a = np.array([1, 2, 3,4,5], ndmin = 2)
print a
輸出如下:
[[1, 2, 3, 4, 5]]
# dtype 引數
import numpy as np
a = np.array([1, 2, 3], dtype = complex)
print a
輸出如下:
[ 1.+0.j, 2.+0.j, 3.+0.j]
ndarray 物件由計算機記憶體中的一維連續區域組成,帶有將每個元素對映到記憶體塊中某個位置的索引方案。 記憶體塊以按行(C 風格)或按列(FORTRAN 或 MatLab 風格)的方式儲存元素。