Курс 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. Установка и использование howdoi
  3. Запрос DELETE с библиотекой requests
  4. Метод Event.wait() в Python
  5. Списковое включение в Python
  6. Создание класса очереди
  7. Работа с argparse
  8. Изменяемые и неизменяемые объекты
  9. Работа с парами ключ-значение
  10. Протокол управления контекстом
  11. Проверка условий: all и any
  12. Удаление дубликатов с сохранением порядка с помощью dict.fromkeys
  13. Переопределение метода __pow__
  14. Разделение строк в Python
  15. List Comprehension Tutorial
  16. Оператор (*) в Python
  17. Копирование файлов с shutil()
  18. Конкатенация строк в Python
  19. Профилирование с Pandas
  20. Модуль math: основные функции
  21. Enum в Python
  22. discard() — удаление элемента из множества
  23. Отступы в Python
  24. Инициализация объекта
  25. Структура данных словарь в Python
  26. Метод __call__ в Python
  27. Передача аргументов в Python
  28. Defaultdict в Python
  29. Работа со строками в Python
  30. Модуль antigravity: генерация координат
  31. Удаление элемента из списка в Python
  32. Оператор in для проверки наличия элемента
  33. Создание namedtuple списком полей
  34. Python Аргументы по умолчанию
  35. Изменение списка срезами
  36. Списковое включение в Python
  37. Функции в одну строку
  38. Сортировка элементов в Python
  39. Подсказки типов в Python
  40. Оператор Walrus в Python 3.8
  41. Python: Фильтрация списков с помощью filter()
  42. Вакансии в Nebius
  43. Явный импорт в Python
  44. Многострочные строки в Python
  45. Эффективная конкатенация строк с использованием join()
  46. Работа с файлами в Python

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