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

Где можно использовать match/case в API

match/case в Python (структурное сопоставление, добавленное в 3.10) удобен в API для:

  1. Обработки разных типов запросов (GET/POST/PUT и т.д.):
python
match request.method:
    case "GET":
        return handle_get()
    case "POST":
        return handle_post(data)
    case _:
        raise HTTPError(405)
  1. Валидации и парсинга данных:
python
match data:
    case {"user": str(name), "age": int(age)} if age > 0:
        return User(name, age)
    case _:
        raise ValueError("Invalid data")
  1. Маршрутизации (роутинга) в минималистичных фреймворках:
python
match path:
    case "/users" | "/users/":
        return list_users()
    case "/users/" + user_id if user_id.isdigit():
        return get_user(int(user_id))
  1. Обработки кодов статуса/ошибок:
python
match response.status:
    case 200:
        process_data(response.json())
    case 404:
        log_error("Not Found")

⚠️ Важно: match/case не заменяет полноценные инструменты типа Pydantic или FastAPI, но упрощает читаемость кода в простых сценариях.

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

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

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

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