Встречается на собеседованиях • сегодня
Как сделать объект фиксированной длины
Для создания объекта фиксированной длины в Python можно использовать collections.namedtuple или dataclasses.dataclass с валидацией.
Пример с namedtuple:
python
from collections import namedtuple
FixedPoint = namedtuple('FixedPoint', ['x', 'y']) # Фиксированные поля x и y
point = FixedPoint(1, 2) # Нельзя добавить/удалить атрибутыПример с dataclass и валидацией:
python
from dataclasses import dataclass
@dataclass(frozen=True) # Запрещает изменение атрибутов
class FixedData:
id: int
name: str
data = FixedData(1, "test") # Неизменяемый объект с фиксированными полямиДля динамической проверки длины можно добавить __post_init__ в dataclass:
python
@dataclass
class FixedLengthList:
items: list
def __post_init__(self):
if len(self.items) != 3: # Фиксированная длина 3
raise ValueError("Длина списка должна быть 3")
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы