dtype

image0image1image2

概述

MindSpore张量支持不同的数据类型,包含int8int16int32int64uint8uint16uint32uint64float16float32float64bool_,与NumPy的数据类型一一对应。

在MindSpore的运算处理流程中,Python中的int数会被转换为定义的int64类型,float数会被转换为定义的float32类型。

详细的类型支持情况请参考:https://www.mindspore.cn/doc/api_python/zh-CN/r1.2/mindspore/mindspore.html#mindspore.dtype

以下代码,打印MindSpore的数据类型int32。

[1]:
from mindspore import dtype as mstype

data_type = mstype.int32
print(data_type)
Int32

数据类型转换接口

MindSpore提供了以下几个接口,实现与NumPy数据类型和Python内置的数据类型间的转换。

  • dtype_to_nptype:将MindSpore的数据类型转换为NumPy对应的数据类型。

  • dtype_to_pytype:将MindSpore的数据类型转换为Python对应的内置数据类型。

  • pytype_to_dtype:将Python内置的数据类型转换为MindSpore对应的数据类型。

以下代码实现了不同数据类型间的转换,并打印转换后的类型。

[2]:
from mindspore import dtype as mstype

np_type = mstype.dtype_to_nptype(mstype.int32)
ms_type = mstype.pytype_to_dtype(int)
py_type = mstype.dtype_to_pytype(mstype.float64)

print(np_type)
print(ms_type)
print(py_type)
<class 'numpy.int32'>
Int64
<class 'float'>