Курс 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. Оператор объединения словарей
  3. Создание функций с произвольным количеством аргументов
  4. Установка и использование модуля Wikipedia
  5. Работа со словарями
  6. Структура строк в Python
  7. Оператор Walrus в Python
  8. Оптимизация параметров в Python
  9. Чтение бинарного файла в Python.
  10. Оператор морж в Python 3.8
  11. Python: динамическая типизация и проверка типов
  12. Декораторы в Python
  13. Бесконечная проверка в Python
  14. Создание Radio кнопок в tkinter
  15. Переменная Шредингера
  16. Генерация UUID в Python
  17. Добавление цвета в консоли
  18. Установка и обучение ChatterBot
  19. Работа с argparse
  20. Функция zip() в Python
  21. Сохранение Unicode в JSON
  22. Переменные в Python: сокращение гласных
  23. Методы обработки строк в Python
  24. Проверка типа данных
  25. Вычисление логарифмов в Python
  26. Фильтры Pillow: NEAREST, BILINEAR, BICUBIC
  27. Структурирование данных с Pydantic
  28. Пропуск начальных строк с помощью dropwhile()
  29. Создание циклической ссылки
  30. Создание вложенных циклов for
  31. Преобразование Word в PDF с Spire.Doc
  32. Работа с SQLite в Python
  33. Ускорение кода с помощью векторизации
  34. Функция findall() для поиска вхождений строки
  35. Асинхронное программирование с asyncio
  36. Настройка шрифта и цвета в Tkinter
  37. Вызов функций по строке в Python.
  38. Метаклассы в Python
  39. Сохранение и загрузка модели в PyTorch
  40. Подсчет элементов в списке с Counter
  41. Декоратор @override
  42. Метод __call__ в Python
  43. Работа с timedelta в Python
  44. Измерение времени выполнения
  45. Проверка элементов списка условием

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