Откройте контекст
Выберите папку проекта и обозначьте нужные файлы или поведение.
Выберите JSON или обычный текст по уже разобранным диапазонам Accept. Проверьте точный тип с нулевым качеством рядом с положительной маской и пустой список предпочтений, не позволяя маске отменить явный запрет.
Выберите папку проекта и обозначьте нужные файлы или поведение.
Укажите входные данные, ожидаемый результат и границы, которые нужно сохранить.
Проверьте предлагаемые изменения и команды, прежде чем полагаться на результат.
Сравните фактическое поведение с ожидаемым. Если проверка не проходит, разберитесь в причине перед следующими изменениями.
def choose_media(ranges):
offered = ["application/json", "text/plain"]
if not ranges:
return offered[0]
choices = []
for i, media in enumerate(offered):
family = media.split("/")[0] + "/*"
matches = [(2 if p == media else 1 if p == family else 0, q)
for p, q in ranges if p in (media, family, "*/*")]
quality = max(matches, default=(-1, 0))[1]
if quality > 0:
choices.append((quality, -i, media))
return max(choices)[2] if choices else NoneПример — отправная точка для реального проекта, а не утверждение, что сгенерированный код уже протестирован. Адаптируйте пути, зависимости и ожидаемое поведение к своему приложению.