numpy.dtype #

numpy. dtype ( dtype , align=False , copy=False [ ,元数据] ) [来源] #

创建数据类型对象。

numpy 数组是同构的,包含由 dtype 对象描述的元素。 dtype 对象可以由基本数字类型的不同组合构造而成。

参数
数据类型

要转换为数据类型对象的对象。

齐布尔值,可选

向字段添加填充,以匹配 C 编译器为类似的 C 结构输出的内容。True仅当obj是字典或逗号分隔的字符串时才可以。如果正在创建 struct dtype,这还会设置粘性对齐标志isalignedstruct

复制布尔值,可选

制作数据类型对象的新副本。如果False,结果可能只是对内置数据类型对象的引用。

元数据字典,可选

带有 dtype 元数据的可选字典。

也可以看看

result_type

例子

使用数组标量类型:

>>> 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')])

使用数组协议类型字符串:

>>> 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')]))

使用词典。名为“性别”和“年龄”的两个字段:

>>> 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')])
属性
alignment

根据编译器,该数据类型所需的对齐方式(字节)。

base

返回子数组的基本元素的 dtype,无论其维度或形状如何。

byteorder

指示该数据类型对象的字节顺序的字符。

char

21 种不同内置类型的每一种都有唯一的字符代码。

descr

__array_interface__数据类型的描述。

fields

为此数据类型定义的命名字段的字典,或None.

flags

描述如何解释此数据类型的位标志。

hasobject

布尔值,指示此数据类型是否在任何字段或子数据类型中包含任何引用计数对象。

isalignedstruct

布尔值,指示数据类型是否是保持字段对齐的结构。

isbuiltin

指示此数据类型与内置数据类型如何关联的整数。

isnative

布尔值,指示此数据类型的字节顺序是否是平台本机的。

itemsize

此数据类型对象的元素大小。

kind

识别一般数据类型的字符代码(“biufcmMOSUV”之一)。

metadata

None元数据的只读字典(映射代理)。

name

该数据类型的位宽名称。

names

字段名称的有序列表,或者None如果没有字段。

ndim

如果此数据类型描述子数组,则为子数组的维数,0否则。

num

21 种不同的内置类型中的每一种都有一个唯一的编号。

shape

如果此数据类型描述子数组,则子数组的形状元组,()否则。

str

此数据类型对象的数组协议类型字符串。

subdtype

如果它描述子数组,则为Tuple ,否则为 None。(item_dtype, shape)dtype

类型

方法

newbyteorder([新命令])

返回具有不同字节顺序的新数据类型。