Курс Python → Делегирование в Python

Делегирование в Python — это механизм, позволяющий объекту передавать выполнение определенных задач другим объектам. В приведенном примере мы имеем класс, который описывает поведение файла и умеет преобразовывать данные из нижнего регистра в верхний. Для этого класса определен метод write(), который конвертирует строку из нижнего в верхний регистр перед вызовом другого метода. Однако сама операция делегирования осуществляется через объект self._out.

Давайте рассмотрим более подробно пример кода:


class Upcase:
    def __init__(self, out):
        self._out = out
    
    def write(self, data):
        self._out.write(data.upper())

В данном примере класс Upcase принимает объект out в качестве параметра при инициализации. Метод write() этого класса принимает данные в виде строки и передает их объекту out, преобразуя перед этим строку в верхний регистр с помощью метода upper().

Таким образом, делегирование в данном контексте позволяет объекту класса Upcase использовать функциональность объекта out для выполнения определенных задач, при этом сам объект Upcase отвечает только за преобразование данных в нужный формат перед передачей их для дальнейшей обработки.

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

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

Автор урока

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

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

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

  1. Поиск индекса элемента
  2. Генерация случайных данных в NumPy
  3. Явный импорт в Python
  4. Преобразование строки в число
  5. Шаблоны и наследование в Flask
  6. Генерация случайных чисел Python
  7. Проверка ввода с помощью isdigit
  8. Операции с числами в Python
  9. Вычисление разности множеств в Python
  10. Операции со строками в Python
  11. Создание и обучение модели с Keras
  12. Форматирование строк в Python
  13. Передача неизвестных аргументов в Python.
  14. Вывод баннеров
  15. Codecademy в Telegram
  16. Декораторы в Python
  17. Метод remove() для удаления элемента из списка
  18. Оператор «is not» в Python
  19. Метод append() для списка
  20. Методы Python для работы с данными
  21. Порядок операций в Python
  22. Enum в Python
  23. Измерение времени выполнения кода
  24. Оператор Walrus: правильное использование
  25. Работа с getopt
  26. Контроль точности вывода чисел
  27. Перевод двоичного кода в целое число
  28. Переворот строки с использованием цикла
  29. Counter() — подсчет элементов
  30. Python: отличительная особенность — отступы
  31. OrderedDict — упорядоченный словарь
  32. Работа с временем в Python
  33. Работа с библиотекой requests
  34. Регистрация на TenChat
  35. Комментарии в Python
  36. Лямбда-функции в Python
  37. Расширение информации об ошибке в Python
  38. Показ всплывающих окон Tkinter
  39. Работа со строками в Python
  40. Python Calendar Usage
  41. Виртуальное окружение Python
  42. Работа со словарями Python
  43. Создание и удаление объектов
  44. Анонимные функции в Python
  45. Методы работы со списками

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