все Python 3operatorфункция
operator.irshift
на месте (in-place)
In-place сдвиг вправо: a >>= b.
Синтаксис
operator.irshift(a, b)
Результат нужно присвоить: x = irshift(x, 1) — встроенные типы с >>= неизменяемы. Для отрицательных чисел сдвиг округляет к минус бесконечности: -5 >> 1 даёт -3. В цикле «пока число не обнулится» это важно: отрицательное число сдвигами вправо до нуля не дойдёт, а застрянет на -1.
Примеры
import operator
print(operator.irshift(16, 2)) # → 4
print(operator.irshift(5, 10)) # → 0
color = 0xFF8800 # достать старший байт цвета
print(operator.irshift(color, 16)) # → 255
print(operator.irshift(-17, 2)) # → -5
print(operator.irshift(1, -1)) # → ValueError
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности