как можно ускорить

как можно ускорить этот код ?

def get_tid_by_index(player, index):
    for t_id in t_id_dict:
        if t_id_dict[t_id]['index'] == index:
            return t_id
    return None

Ответы (1 шт):

Автор решения: Roman-Stop RU aggression in UA

Один вариант - создать обратный индекс. Т.е. создать dict index_to_tid из индексов в t_id и при добавлении в t_id_dict добавлять туда значение и его использовать при поиске:


t_id_dict = {}
index_to_tid = {}

def add_t(t_id, t):
   t_id_dict[t_id] = t
   index_to_tid[t_id['index']] = t_id

def get_tid_by_index(player, index):
   return index_to_tid.get(index, None)
→ Ссылка