本文简要介绍 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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。