Встречается на 2% собеседований по Python
В чем плюсы и минусы dataclass в Python
Плюсы:
- Автоматически генерирует
__init__,__repr__,__eq__и другие методы, сокращая boilerplate-код. - Поддержка типизации через аннотации, что улучшает читаемость и проверку типов (с
mypy). - Неизменяемость через
frozen=True. - Легко добавлять дефолтные значения и порядок полей (
field(default=...)).
Минусы:
- Менее гибкий, чем обычные классы (например, сложнее кастомизировать методы).
- Нет поддержки слабых ссылок (
__weakref__) по умолчанию. - Немного накладные расходы на создание (но обычно не критично).
Пример:
python
from dataclasses import dataclass
@dataclass
class Point:
x: int
y: int = 0 # Дефолтное значение
p = Point(1)
print(p) # Point(x=1, y=0)
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы