From 3cf981af60dd0b1b6c40807fb542d68ddb0a5f84 Mon Sep 17 00:00:00 2001 From: doe1080 <98906116+doe1080@users.noreply.github.com> Date: Mon, 29 Jun 2026 02:09:39 +0900 Subject: [PATCH] [utils] `qualities`: Avoid repeated index lookups (#17025) Authored by: doe1080 --- yt_dlp/utils/_utils.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/yt_dlp/utils/_utils.py b/yt_dlp/utils/_utils.py index 462b85355e..7c6dee7cc1 100644 --- a/yt_dlp/utils/_utils.py +++ b/yt_dlp/utils/_utils.py @@ -2848,11 +2848,13 @@ def js_to_json(code, vars={}, *, strict=False): def qualities(quality_ids): """ Get a numeric quality value out of a list of possible values """ + quality_map = {} + for index, quality_id in enumerate(quality_ids): + quality_map.setdefault(quality_id, index) + def q(qid): - try: - return quality_ids.index(qid) - except ValueError: - return -1 + return quality_map.get(qid, -1) + return q