Skip to content

Перегрузка операторов

  1. Математические операторы:

    ОператорВыражениеСпециальная функцияМетод класса
    Сложениеv1 + v2v1.__add__(v2)def __add__(self, v2):
    Вычитаниеv1 - v2v1.__sub__(v2)def __sub__(self, v2):
    Умножениеv1 * v2v1.__mul__(v2)def __mul__(self, v2):
    Возведение в степеньv1 ** v2v1.__pow__(v2)def __pow__(self, v2):
    Делениеv1 / v2v1.__truediv__(v2)def __truediv__(self, v2):
    Целочисленное делениеv1 // v2v1.__floordiv__(v2)def __floordiv__(self, v2):
    Остаток от деленияv1 % v2v1.__mod__(v2)def __mod__(self, v2):
  2. Операторы сравнения:

    ОператорВыражениеСпециальная функцияМетод класса
    Равноv1 == v2v1.__eq__(v2)__eq__(self, value):
    Не равноv1 != v2v1.__ne__(v2)__ne__(self, value):
    Большеv1 > v2v1.__gt__(v2)__gt__(self, value):
    Больше или равноv1 >= v2v1.__ge__(v2)__ge__(self, value):
    Меньшеv1 < v2v1.__lt__(v2)__lt__(self, value):
    Меньше или равноv1 <= v2v1.__le__(v2)__le__(self, value):
  3. Побитовые операторы:

    ОператорВыражениеСпециальная функцияМетод класса
    Побитовый сдвиг влевоv1 << v2v1.__lshift__(v2)def __lshift__(self, v2):
    Побитовый сдвиг вправоv1 >> v2p1.__rshift__(p2)def __rshift__(self, v2):
    Побитовое И (AND)v1 & v2v1.__and__(v2)def __and__(self, v2):
    Побитовое ИЛИ (OR)v1 | v2v1.__or__(v2)def __or__(self, v2):
    Побитовое исключающее ИЛИ (XOR)v1 ^ v2v1.__xor__(v2)def __xor__(self, v2):
    Побитовое НЕ (NOT)~v1v1.__invert__()def __invert__(self):

Contacts: teffal@mail.ru