Курс Python → Хэш-функции в Python

Хэш-функции — это важная часть работы со словарями в Python. Например, если мы хотим найти значение по ключу в словаре, Python может сделать это быстро благодаря использованию хэш-функций. Как именно Python находит значение 5 в словаре, содержащем 5.0? Он использует хэш-функции. При поиске ключа foo в словаре, Python сначала вычисляет хэш-значение этого ключа с помощью функции hash(foo).

Одним из важных свойств хэш-функций в Python является то, что объекты, которые сравниваются как равные, должны иметь одинаковое хэш-значение. Это означает, что если 5, 5.0 и 5 + 0j сравниваются как равные объекты, то у них будет одинаковое хэш-значение. Это позволяет Python эффективно использовать хэш-таблицы для быстрого поиска значений в словарях.


# Пример использования хэш-функций в Python
my_dict = {5: 'five', 5.0: 'five point zero', 5 + 0j: 'five complex'}
key = 5
hash_value = hash(key)
if hash_value in my_dict:
    print(my_dict[hash_value])

В приведенном примере мы создаем словарь, где ключами являются различные представления числа 5 (целое, с плавающей точкой, комплексное). Затем мы ищем значение по ключу 5, вычисляем его хэш-значение и проверяем, есть ли это значение в словаре. Благодаря хэш-функциям Python может быстро найти и вернуть значение, связанное с ключом 5.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Разделение строки в Python
  2. Оптимизация гиперпараметров в Python
  3. Генерация строк с .join()
  4. Python groupby() из itertools: работа с повторяющимися элементами
  5. Структурирование именованных констант
  6. Поиск простых чисел
  7. Итерация по копии коллекции
  8. Функция format() в Python
  9. Декораторы с аргументами
  10. Создание именованных кортежей в Python
  11. Работа с IP-адресами в Python
  12. Основные операции с библиотекой Numpy
  13. Подписка на @SelectelNews
  14. Работа с collections в Python
  15. Поиск анаграмм с Counter
  16. Генераторы списков в Python
  17. Списковый компрехеншен.
  18. Поиск HTML-элементов с BeautifulSoup
  19. Работа с процессами в Python
  20. Расчет времени выполнения
  21. Метод __irshift__ для Python
  22. Метод rmatmul для обратного матричного умножения
  23. Генераторные функции в Python
  24. Парсинг статей с Newspaper3k
  25. Преобразование Word в PDF с Spire.Doc
  26. Многострочные строки в Python
  27. Проверка дублей в списке.
  28. Метод append() для списка
  29. f-строки в формате строк
  30. Форматирование строк с помощью f-строк
  31. Упрощенный вывод данных в Python
  32. Функция zip() для объединения списков
  33. Проблемы с dict в Python
  34. Progress с библиотекой tqdm
  35. Конкатенация списков в Python
  36. Создание и обучение модели с Keras
  37. F-строки в Python 3.8
  38. Оболочка Python
  39. Пустой оператор pass в Python
  40. Работа с Telegram API на Python
  41. Основы работы с os
  42. Безопасные SQL-запросы в Python 3.11
  43. Особенности ключей словаря в Python
  44. Оформление кода на Python
  45. Частичное совпадение ввода
  46. Объединение объектов в Python
  47. Преобразование данных в Python

Marketello читают маркетологи из крутых компаний