Курс 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. Перемешивание списка с shuffle()
  3. Извлечение данных из JSON
  4. Оператор is в Python
  5. Методы обработки строк в Python
  6. Объединение словарей в Python
  7. CSV строка разделение в Python
  8. Работа с множествами в Python
  9. Обмен переменными в Jupyter
  10. Объединение словарей в Python 3.5+
  11. Метод __iand__ для пользовательских классов
  12. Python Поверхностное Копирование
  13. Форматирование даты с strftime()
  14. Оператор деления для класса Rational
  15. Пространство имен в Python
  16. Удаление элементов из списка
  17. Функции с необязательными аргументами
  18. Генерация ключей RSA
  19. Защита данных в Python
  20. Уникальность ключей в словаре
  21. Работа с временем в Python
  22. Карта бомбоубежищ в Москве и Питере
  23. Удаление элемента по индексу в Python
  24. Вычисление логарифмов в Python
  25. Блок else в циклах Python
  26. Цикл for с enumerate() в Python
  27. Сортировка с помощью key
  28. Фильтрация списка от «ложных» значений
  29. Форматирование строк в Python
  30. Подсчет частоты элементов с Counter
  31. Подписка на Kaspersky Team
  32. Избегание изменяемых аргументов
  33. Удаление элемента из списка в Python
  34. Проблема сравнения словарей
  35. Подсчет элементов с помощью Counter
  36. Функция enumerate() в Python
  37. Оператор «and» в Python
  38. Работа с CSV файлами в Python
  39. Объединение списков в Python
  40. Описание скриптов в README
  41. Создание словарей и множеств в Python
  42. Поиск самого длинного слова в списке с использованием max()
  43. Запрос пароля с помощью getpass
  44. Работа с deque из collections
  45. Печать комбинаций в Python с Itertools
  46. Операторы сравнения в Python
  47. Преобразование Excel в PDF с Spire.XLS
  48. Печать месячного календаря

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