Рубрики
Без рубрики

Python Hashmaps | Реализация с использованием словаря

python hashmaps хранит данные в виде пары ключ-значение. Он обычно используется для легкого и быстрого извлечения. Данные Hashmap могут быть получены с помощью ключа.

Автор оригинала: Team Python Pool.

Python Hashmaps | Реализация с использованием словаря

“Каждую секунду каждого дня наши органы чувств приносят слишком много информации, чем мы можем обработать в нашем мозгу.” – Питер Диамандис Председатель/генеральный директор Фонда X-Prize.Этой цитаты достаточно, чтобы показать важность данных в современном мире. Не только массивные данные производятся каждую секунду, но и имеют большое разнообразие.

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

Python hashmaps-это тип структуры данных, которая хранит данные в виде пары ключ-значение. Основная цель хэш-карт python-получение данных с помощью ключа. Хэш-карты также называются словарями в Python.

Интуиция за python hashmap

В hashmap ключ генерируется с помощью хэш-функций. Основные характеристики этого ключа заключаются в том, что он уникален и не может быть null (nothing). Кроме того, хэш-карты не синхронизированы. Если мы используем его в многопоточной среде, то несколько потоков могут получить к нему доступ и использовать хэш-карту одновременно.

Это не значит, что мы не можем использовать индекс для извлечения значений в списке или массиве, но преимущество хэш-карт заключается в том, что мы также можем создавать строки ключей. Эти типы ключей легко запоминаются, что делает их поиск легким и быстрым. Обновление и удаление значений также становятся легкими.В языке программирования, таком как Java, хэш-карты реализуются с помощью платформы collection framework. Но в python хэш-карты реализуются с помощью встроенного словаря типов данных.

Реализация python Hashmap

В python словари удовлетворяют всем требованиям, таким как уникальные ключи и ненулевые значения. Давайте научимся создавать хэш-карты на реальных примерах.

Когда нам нужно позвонить, мы обычно ищем имя человека, и в качестве вывода получаем нужный номер телефона. Это пример хэш-карт. Имя-это ключ, а номер телефона-это значение. Теперь предположим, что у вас есть список телефонных номеров. И вы хотите сделать телефонный звонок определенному человеку. Насколько легко извлечь этот номер из списка? Очень трудно, наверное.

Кроме того, трудно запомнить телефонные номера. Потому что, будучи людьми, мы не очень хорошо запоминаем числа, но мы отлично запоминаем имена. Возьмем другую ситуацию, когда вы хотите удалить этот номер телефона. Если вы знаете имя, вы можете легко удалить номер. Теперь это было много объяснений. Давайте приступим к реализации.

phone_numbers={
'person1':909090909,
'person2':808080808,
'person3':707070707,
'person4':606060606,
'person5':505050505,
'person6':909090901,
'person7':808080802,
'person8':707070703,
'person9':606060604,
'person10':505050500
}

print(phone_numbers)
python hashmap
python hashmap
Output-
{'person1': 909090909, 'person2': 808080808, 'person3': 707070707, 'person4': 606060606, 'person5': 505050505, 'person6': 909090901, 'person7': 808080802, 'person8': 707070703, 'person9': 606060604, 'person10': 505050500}
  • Если мы хотим найти номер телефона человека 1-
phone_numbers={
'person1':909090909,
'person2':808080808,
'person3':707070707,
'person4':606060606,
'person5':505050505,
'person6':909090901,
'person7':808080802,
'person8':707070703,
'person9':606060604,
'person10':505050500
}
print(phone_numbers.get('person1'))
# or print(phone_numbers['person1'])
python hashmap
python hashmap
Output-
909090909

Редактирование и удаление значения: Python Hashmaps

  • Теперь предположим, что вы хотите удалить/удалить это значение.
phone_numbers.pop('person1')
print(phone_numbers)
Output-
{'person2': 808080808,
'person3': 707070707,
'person4': 606060606,
'person5': 505050505,
'person6': 909090901,
'person7': 808080802,
'person8': 707070703,
'person9': 606060604,
'person10': 505050500}
  • Вы также можете обновить номер телефона, если этот человек изменил его.
Output-
{'person2': 808080808,
'person3': 333333333,
'person4': 606060606,
'person5': 505050505,
'person6': 909090901,
'person7': 808080802,
'person8': 707070703,
'person9': 606060604,
'person10': 505050500}

Другим способом обновления значения является использование функции update().

phone_numbers.update({'person4':111111111})
print(phone_numbers)
Output-

{'person2': 808080808,
'person3': 333333333,
'person4': 111111111,
'person5': 505050505,
'person6': 909090901,
'person7': 808080802,
'person8': 707070703,
'person9': 606060604,
'person10': 505050500}
  • Добавление значений-
Output-
{'person2': 808080808, 'person3': 333333333, 'person4': 111111111, 'person5': 505050505, 'person6': 909090901, 'person7': 808080802, 'person8': 707070703, 'person9': 606060604, 'person10': 505050500, 'person11': 111111111}

Разница между Hashmap и HashTable в Python

В python нет большой разницы между Python hashmaps, hashtables и словарями. Но на других языках один из самых распространенных вопросов интервью в hashmaps-это объяснение его разницы с hashtable.

  • Одно из важнейших различий между хэш-таблицами и хэш-картами заключается в том, что хэш-таблицы синхронизируются, а хэш-карты-нет. Мы уже знаем значение несинхронизированного, а теперь давайте посмотрим, что такое синхронизированная структура данных. Это означает, что только один поток может быть изменен хэш-таблицей в один момент времени.
  • Хэш-карты работают быстрее и занимают гораздо меньше времени href=”https://en.wikipedia.org/wiki/Memory”>память по сравнению с хэш-таблицами. href=”https://en.wikipedia.org/wiki/Memory”>память по сравнению с хэш-таблицами.

Должен Читать:

  • Как преобразовать строку в нижний регистр в
  • Как вычислить Квадратный корень
  • Пользовательский ввод | Функция ввода () | Ввод с клавиатуры
  • Лучшая книга для изучения Python

Вывод-

Хеш-карты Python являются значимыми структурами данных, когда у нас есть данные в виде пары ключ-значение. Реализация хэш-карт в python проста, если мы сравним ее с другими языками, потому что в python у нас есть словари, чтобы облегчить эту задачу.

Попробуйте запустить программы на вашей стороне и дайте мне знать, если у вас есть какие-либо вопросы.

Счастливого кодирования!