РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
⊗pynpSpDtOv 6 of 145 menu
◀ ▶

Переполнение в NumPy

У uint8 максимальное значение 255. Если прибавить единицу, результат не расширяет тип, а оборачивается по модулю диапазона.

Сложим 255 и 1 в типе uint8:

import numpy as np val = np.array(255, dtype=np.uint8) res = val + np.uint8(1) print(res) # выведет 0

То же видно, если сложить два массива на границе диапазона:

import numpy as np a = np.array([254, 255], dtype=np.uint8) b = np.array([1, 1], dtype=np.uint8) print(a + b) # выведет [255 0]

Создайте значение 255 с типом uint8, прибавьте к нему 1 в том же типе и выведите результат.

Создайте массив 254 и 255 с типом uint8, прибавьте к каждому элементу 1 и выведите сумму.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить