Курс Python → Переопределение метода __rshift__

Для того чтобы использовать операцию сдвига вправо для объекта в Python, необходимо переопределить метод rshift. Это может быть полезно, например, при работе с бинарными числами или другими типами данных, где операция сдвига вправо имеет смысл.

Метод rshift переопределяется в классе объекта, который вы хотите использовать со сдвигом вправо. Для этого нужно определить специальный метод __rshift__. Этот метод принимает два аргумента: объект, который будет сдвигаться, и количество позиций, на которое нужно сдвинуть.


class MyClass:
    def __rshift__(self, n):
        # реализация операции сдвига вправо
        pass

После того как вы переопределили метод __rshift__ в своем классе, вы сможете использовать операцию сдвига вправо для объектов этого класса. Например:


obj1 = MyClass()
result = obj1 >> 2

В данном примере объект obj1 будет сдвинут вправо на 2 позиции. Таким образом, переопределение метода __rshift__ позволяет объекту поддерживать стандартную операцию сдвига вправо в Python.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Простой калькулятор Python
  2. Оператор «not» в Python
  3. Генерация UUID в Python
  4. Создание обратного итератора
  5. Переопределение метода __pow__
  6. Анонимные функции Lambda
  7. Разработка игры Pong с turtle
  8. Глобальные переменные в Python
  9. Создание таблиц в Python с PrettyTable
  10. Замеры производительности в Python
  11. Принципы Zen Python
  12. Python OrderedDict и fromkeys() — работа с словарями
  13. Python enumerate() использование
  14. Сравнение def и lambda функций в Python
  15. Очистка входных данных
  16. Порядок операций в Python
  17. Работа с модулем os в Python
  18. Работа со строками в Python
  19. Уникальность ключей в словаре
  20. Проверка условий: all и any
  21. Подсказки типов в Python
  22. Распаковка элементов массива
  23. Enum в Python
  24. Работа с комплексными числами
  25. Поиск с библиотекой Google
  26. Список переменных в Python
  27. Создание копии итератора
  28. Генераторы в Python
  29. Работа со словарями с defaultdict из collections
  30. Асинхронное выполнение задач в процессах
  31. Деление в Python
  32. Отправка поздравлений по дню рождения
  33. Работа с кортежами
  34. Работа со строками в Python
  35. Срез в Python
  36. Выражения-генераторы в Python
  37. Метод __getitem__ в Python
  38. Методы HTTP запросов в Flask
  39. Возврат нескольких значений
  40. Подсчет частотности элементов в Python
  41. Атрибуты класса и экземпляра
  42. Срезы в Numpy
  43. Перегрузка операторов в Python
  44. Генераторные функции в Python
  45. Получение срезов итераторов
  46. Сокращение ссылок с pyshorteners

Marketello читают маркетологи из крутых компаний