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

Какие схемы реализовывал на pydantic

Pydantic позволяет реализовывать различные схемы валидации данных. Основные сценарии:

  1. Базовые модели - простые DTO для валидации входных/выходных данных:
python
class User(BaseModel):
    id: int
    name: str = "John Doe"
    email: EmailStr
  1. Вложенные модели - композиция объектов:
python
class Address(BaseModel):
    city: str
    street: str

class User(BaseModel):
address: Address

text

3. **Динамические модели** - создание моделей на лету с `create_model`:
```python
DynamicUser = create_model('DynamicUser', age=(int, ...))
  1. Настройка валидации - кастомные валидаторы через декораторы:
python
@validator('name')
def name_must_contain_space(cls, v):
    if ' ' not in v:
        raise ValueError('must contain a space')
    return v.title()
  1. Работа с API - модели для запросов/ответов в FastAPI:
python
class ItemCreate(BaseModel):
    name: str
    price: float

class ItemResponse(ItemCreate):
    id: int
    created_at: datetime
  1. Наследование моделей - расширение базовых моделей:
python
class BaseUser(BaseModel):
    email: str

class AdminUser(BaseUser):
    is_admin: bool = True

Pydantic особенно полезен для парсинга и валидации данных из JSON, env-переменных, конфигов.

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

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

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

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