dtype=np.int32 или dtype=int. Есть ли разница, если есть то в чем?
Есть ли разница, если есть то в чем ? Это библиотека NumPy При создании массива есть ли разница в dtype=np.int32 или dtype=int. Если есть ,то в чем?
Ответы (2 шт):
Основное различие в том, что int не фиксированного размера в отличие от np.int32. Другое различие в том, что np.int32 поддерживает больше аттрибутов, относящихся к библиотеке numpy.
Различие в том, что при использовании dtype=int, вместо int будет использовано np.int_, что в свою очередь представляет собой тип данных C long. В зависимости от платформы np.int_ равен np.int32 или np.int64 (см. пример ниже). Если указать dtype=np.int32 или dtype="int32", то будет использоваться тип данных int32 вне зависимости от платформы.
Пример:
import numpy as np
a = np.array([1,2,3], dtype=int)
b = np.array([1,2,3], dtype=np.int32)
c = np.array([1,2,3], dtype=np.int_)
print("int: {}".format(a.dtype))
print("int32: {}".format(b.dtype))
print("int_: {}".format(c.dtype))
Вывод на Windows 64-bit:
int: int32
int32: int32
int_: int32
Вывод на Linux 64-bit:
int: int64
int32: int32
int_: int64