Поиск ключа по значению в словаре Python не является прямой операцией, так как словари предназначены для быстрого доступа по ключу, а не наоборот. Однако, есть несколько способов решить эту задачу: def get_key_by_value(dict_, val):
for key, value in dict_.items():
if val == value:
return key
return None
my_dict = {'a': 1, 'b': 2, 'c': 3}
key = get_key_by_value(my_dict, 2)
print(key) # Вывод: b Более компактный способ, но работает аналогично первому. key = next((k for k, v in my_dict.items() if v == 2), None)
print(key) def invert_dict(d):
return {v: k for k, v in d.items()}
my_dict = {'a': 1, 'b': 2, 'c': 3}
inverted_dict = invert_dict(my_dict)
key = inverted_dict[2]
print(key) Какой метод выбрать зависит от: Пример с обработкой отсутствия значения: def get_key_by_value(dict_, val):
for key, value in dict_.items():
if val == value:
return key
return "Значение не найдено"