Как упомянуто @yatu в комментариях, numpy.dtype
не будет возвращать тип данных массива. Он создает только объекты dtype. С другой стороны, ndarray.dtype
возвращает и тип данных массива. Чтобы лучше это понять, вот пример кода:
a = np.dtype(np.int16)
b = np.array([1., 2., 3.])
c = np.array([1., 2., 3.], a)
Обратите внимание, как объект dtype a
передается в массив c
при его создании.
output:
a: int16
b.dtype: float64
c.dype: int16