本文簡要介紹 python 語言中 numpy.dtype
的用法。
用法:
class numpy.dtype(dtype, align=False, copy=False)
創建一個數據類型對象。
numpy 數組是同質的,並且包含由 dtype 對象說明的元素。 dtype 對象可以由基本數字類型的不同組合構成。
- dtype:
要轉換為數據類型對象的對象。
- align: 布爾型,可選
向字段添加填充以匹配 C 編譯器為類似的 C-struct 輸出的內容。可
True
除非對象是字典或逗號分隔的字符串。如果正在創建 struct dtype,這也會設置一個粘性對齊標誌isalignedstruct
.- copy: 布爾型,可選
製作數據類型對象的新副本。如果
False
,結果可能隻是對內置數據類型對象的引用。
參數:
例子:
使用 array-scalar 類型:
>>> np.dtype(np.int16) dtype('int16')
結構化類型,一個字段名‘f1’,包含int16:
>>> np.dtype([('f1', np.int16)]) dtype([('f1', '<i2')])
結構化類型,一個名為 ‘f1’ 的字段,它本身包含一個帶有一個字段的結構化類型:
>>> np.dtype([('f1', [('f1', np.int16)])]) dtype([('f1', [('f1', '<i2')])])
結構化類型,兩個字段:第一個字段包含 unsigned int,第二個字段包含 int32:
>>> np.dtype([('f1', np.uint64), ('f2', np.int32)]) dtype([('f1', '<u8'), ('f2', '<i4')])
使用 array-protocol 類型字符串:
>>> np.dtype([('a','f8'),('b','S10')]) dtype([('a', '<f8'), ('b', 'S10')])
使用逗號分隔的字段格式。形狀為 (2,3):
>>> np.dtype("i4, (2,3)f8") dtype([('f0', '<i4'), ('f1', '<f8', (2, 3))])
使用元組。
int
是固定類型,3 字段的形狀。void
是一個靈活的類型,這裏的大小為 10:>>> np.dtype([('hello',(np.int64,3)),('world',np.void,10)]) dtype([('hello', '<i8', (3,)), ('world', 'V10')])
將
int16
細分為 2 個int8
,分別稱為 x 和 y。 0 和 1 是以字節為單位的偏移量:>>> np.dtype((np.int16, {'x':(np.int8,0), 'y':(np.int8,1)})) dtype((numpy.int16, [('x', 'i1'), ('y', 'i1')]))
使用字典。名為 ‘gender’ 和 ‘age’ 的兩個字段:
>>> np.dtype({'names':['gender','age'], 'formats':['S1',np.uint8]}) dtype([('gender', 'S1'), ('age', 'u1')])
以字節為單位的偏移量,此處為 0 和 25:
>>> np.dtype({'surname':('S25',0),'age':(np.uint8,25)}) dtype([('surname', 'S25'), ('age', 'u1')])
- numpy.dtype.alignment
根據編譯器,此數據類型所需的對齊方式(字節)。
- numpy.dtype.base
返回子數組的基本元素的 dtype,無論它們的維度或形狀如何。
- numpy.dtype.byteorder
指示此數據類型對象的字節順序的字符。
char
21 種不同的內置類型中的每一種都有一個唯一的字符代碼。
- numpy.dtype.descr
__array_interface__ 數據類型的說明。
- numpy.dtype.fields
為此數據類型定義的命名字段字典,或
None
。- numpy.dtype.flags
Bit-flags 說明如何解釋此數據類型。
hasobject
布爾值,指示此 dtype 是否在任何字段或 sub-dtypes 中包含任何 reference-counted 對象。
isalignedstruct
布爾值,指示 dtype 是否是保持字段對齊的結構。
- numpy.dtype.isbuiltin
指示此 dtype 如何與內置 dtypes 相關的整數。
isnative
布爾值,指示此 dtype 的字節順序是否是平台原生的。
- numpy.dtype.itemsize
此數據類型對象的元素大小。
- numpy.dtype.kind
識別一般數據類型的字符代碼(“biufcmMOSUV”之一)。
- numpy.dtype.metadata
None
或元數據的隻讀字典(mappingproxy)。- numpy.dtype.name
此數據類型的 bit-width 名稱。
- numpy.dtype.names
字段名稱的有序列表,如果沒有字段,則為
None
。- numpy.dtype.ndim
如果此數據類型說明了sub-array,則為sub-array 的維數,否則為
0
。- numpy.dtype.num
21 種不同的內置類型中的每一種都有一個唯一編號。
- numpy.shape
如果此數據類型說明了sub-array,則為sub-array 的形狀元組,否則為
()
。str
此數據類型對象的 array-protocol 類型字符串。
- numpy.dtype.subdtype
如果
dtype
說明了 sub-array,則為元組(item_dtype, shape)
,否則為 None。- type:
屬性:
相關用法
- Python numpy dtype.isbuiltin用法及代碼示例
- Python numpy dtype.shape用法及代碼示例
- Python numpy dtype.ndim用法及代碼示例
- Python numpy dtype.alignment用法及代碼示例
- Python numpy dtype.names用法及代碼示例
- Python numpy dtype.__class_getitem__用法及代碼示例
- Python numpy dtype.flags用法及代碼示例
- Python numpy dtype.fields用法及代碼示例
- Python numpy dtype.subdtype用法及代碼示例
- Python numpy dtype.descr用法及代碼示例
- Python numpy dtype.kind用法及代碼示例
- Python numpy dtype.metadata用法及代碼示例
- Python numpy dtype.newbyteorder用法及代碼示例
- Python numpy dtype.char用法及代碼示例
- Python numpy dtype.base用法及代碼示例
- Python numpy dtype.byteorder用法及代碼示例
- Python numpy dtype.num用法及代碼示例
- Python numpy dtype.name用法及代碼示例
- Python numpy dtype.itemsize用法及代碼示例
- Python numpy diagonal用法及代碼示例
- Python numpy divmod用法及代碼示例
- Python numpy diagflat用法及代碼示例
- Python numpy delete用法及代碼示例
- Python numpy dec.setastest用法及代碼示例
- Python numpy datetime_as_string用法及代碼示例
注:本文由純淨天空篩選整理自numpy.org大神的英文原創作品 numpy.dtype。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。