Встречается на собеседованиях • сегодня

Какие знаешь паттерны проектирования встроенные в Python

В Python есть несколько встроенных паттернов проектирования, которые активно используются в стандартной библиотеке и самом языке:

Итератор - встроен в язык через протокол __iter__/__next__:

python
for item in [1, 2, 3]:  # использует итератор
    print(item)

Декоратор - функция, изменяющая поведение другой функции:

python
def logger(func):
    def wrapper(*args):
        print(f"Calling {func.__name__}")
        return func(*args)
    return wrapper

@logger
def greet(name):
return f"Hello {name}"

text

**Синглтон** - реализуется через модули (каждый модуль загружается один раз):
```python
# module.py
class Singleton:
    pass

instance = Singleton()  # будет создан только один раз

Фабричный метод - например, datetime.now() создает объекты даты.

Адаптер - например, io.StringIO адаптирует строку под файловый интерфейс.

Наблюдатель - реализован в weakref для слабых ссылок и событий.

Стратегия - например, sorted() принимает ключевую функцию для изменения поведения сортировки.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы