Как найти ключ по значению в словаре питон

от admin

Python-сообщество

можно ли получить ключ по значению в словаре? может есть какая то стандартная функция?

как получить Gorod, зная значение

#2 Май 28, 2012 12:39:31

получить ключ по значению в словаре

Возможно, стоит подумать над изменением логики работы программы. Ну или созданием второго словаря, если операция критична по времени.

#3 Май 28, 2012 12:44:13

получить ключ по значению в словаре

просто я думал может есть стандартные методы.

примерно так я тоже реализовал, переводил в список и смотрел по второму значнию.

сделаю второй словарь наоборот 🙂

#4 Май 28, 2012 12:45:42

получить ключ по значению в словаре

а ещё тогда второй вопрос. нет ли стандартной функци для получения обратного словаря?

ну чтобы опять что-то не ищобретать.

через цикл то сделать смогу, вот так

Отредактировано ilnur (Май 28, 2012 12:47:38)

#5 Май 28, 2012 12:55:26

получить ключ по значению в словаре

Если все значения в словаре хешируемы, тогда:

Отредактировано fata1ex (Май 28, 2012 12:57:54)

#6 Май 28, 2012 13:46:15

получить ключ по значению в словаре

>>>>а ещё тогда второй вопрос. нет ли стандартной функци для получения обратного словаря?
Предположим, у Вас есть словарь

Отредактировано FishHook (Май 28, 2012 13:47:07)

#7 Май 28, 2012 15:14:18

получить ключ по значению в словаре

Непонятно, что делать с дублирующимися значениями. Или тогда делать двухмерный список, или брать только один из дубликатов, или брать все в список.

#8 Май 28, 2012 15:40:58

получить ключ по значению в словаре

asilyator, как бы об этом уже написал FishHook.

Дублирующие значения можно хранить в ключе-кортеже, что может усугубить доступ к значению в новом словаре до O(n), так как потребуется перебор всех ключей, если ключ не найдётся в словаре сам по себе. В любом случае использовать структуры данных надо с умом, понимая, зачем и когда они нужны. Поддерживать актуальными два словаря тоже не самое приятное занятие, поэтому лучше подумать о другой структуре данных или об абстрагировании реализации через свой класс.

Поиск ключа по его значению в словаре Python

В этом посте мы обсудим, как искать ключ по его значению в словаре Python.

1. Использование выражения генератора

Простое решение — использовать генераторное выражение для поиска ключа по его значению в словаре. Вот как будет выглядеть код:

2. Использование обратного словаря

Здесь идея состоит в том, чтобы создать словарь пар значение-ключ. Вы можете использовать zip() для объединения значений и ключей словаря и передачи результата конструктору словаря для получения словаря.

Это предполагает, что в словаре нет двух ключей с одинаковыми значениями, и все значения словаря можно хэшировать. Вы можете упростить код с помощью map() функция:

Это все о поиске ключа по его значению в словаре Python.

Оценить этот пост

Средний рейтинг 5 /5. Подсчет голосов: 20

Голосов пока нет! Будьте первым, кто оценит этот пост.

Сожалеем, что этот пост не оказался для вас полезным!

Расскажите, как мы можем улучшить этот пост?

Спасибо за чтение.

Пожалуйста, используйте наш онлайн-компилятор размещать код в комментариях, используя C, C++, Java, Python, JavaScript, C#, PHP и многие другие популярные языки программирования.

Как мы? Порекомендуйте нас своим друзьям и помогите нам расти. Удачного кодирования ��

Python dictionary find a key by value

In this Python tutorial, we will learn about the Python dictionary to find a key by value. Also, we will discuss the below examples:

  • Python dictionary find key by max value.
  • Python dictionary get Key value by index
  • Python dictionary find key using value
  • Python dictionary get key value pair
  • Python dictionary find key with maximum value
  • Python dictionary get key if value exists

Table of Contents

Python dictionary find a key by value

Похожие статьи