Тип int32
Тип int32 в NumPy представляет 32-разрядное целое число со знаком.
Диапазон значений этого типа: от -2 147 483 648 до 2 147 483 647.
Этот тип используется для экономии памяти по сравнению с int64,
особенно при работе с большими массивами данных.
Тип int32 соответствует типу int в языке C на большинстве платформ.
Синтаксис
Указание типа int32 при создании массива:
np.array(object, dtype=np.int32)
Преобразование существующего массива к типу int32:
arr.astype(np.int32)
Пример
Создадим массив чисел с явным указанием типа int32:
import numpy as np
arr = np.array([10, 20, 30, 40, 50], dtype=np.int32)
print(arr)
print(arr.dtype)
Результат выполнения кода:
[10 20 30 40 50]
int32
Пример
Преобразуем массив с плавающей точкой в целочисленный тип int32:
import numpy as np
arr_float = np.array([1.5, 2.8, 3.2, 4.7, 5.1])
arr_int32 = arr_float.astype(np.int32)
print(arr_int32)
print(arr_int32.dtype)
Результат выполнения кода:
[1 2 3 4 5]
int32
Пример
Попытка сохранить число, выходящее за пределы диапазона int32,
приводит к переполнению:
import numpy as np
arr = np.array([2_147_483_647], dtype=np.int32)
print(arr)
arr_overflow = np.array([2_147_483_648], dtype=np.int32)
print(arr_overflow)
Результат выполнения кода:
[2147483647]
[-2147483648]
Пример
Создадим двумерный массив с типом int32 и выполним
арифметические операции:
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]], dtype=np.int32)
res = arr * 2 + 10
print(res)
print(res.dtype)
Результат выполнения кода:
[[12 14 16]
[18 20 22]]
int32