Курс 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. Возврат нескольких значений
  2. Фильтры Pillow: NEAREST, BILINEAR, BICUBIC
  3. Оператор is в Python
  4. Оптимизация памяти с __slots__
  5. Функции в Python
  6. Освобождение памяти в Python
  7. Простой калькулятор Python
  8. Переменная Шредингера
  9. Подсчет элементов в Python
  10. Счетчик ссылок в Python
  11. Официальный канал Python в Telegram
  12. Модуль math: основные функции
  13. Операторы присваивания в Python
  14. Названия переменных
  15. Работа с комплексными числами в Python
  16. Python Метод sleep() из time
  17. Создание и операции с дробями
  18. Назначение максимального и минимального значения переменной в Python.
  19. Работа с GitHub в Telegram
  20. Проверка элементов списка условием
  21. Применение функций в Python
  22. Метод join для объединения строк
  23. Оператор морж в Python 3.8
  24. Перевернуть список в Python
  25. Обработка ошибок в Python
  26. Обработка ошибок в Python
  27. Управление памятью в numpy.
  28. Округление дробей в Python
  29. Проверка дубликатов в Python
  30. Defaultdict в Python
  31. Использование функции enumerate()
  32. Итераторы с потерямиZIP
  33. Метод __getitem__ в Python
  34. Склеивание строк через метод join()
  35. Вызов внешних программ в Python с помощью sh
  36. Использование метода lower()
  37. Функция enumerate() в Python
  38. Создание коллекций из генератора
  39. Метод append() для списка
  40. *args и **kwargs в Python
  41. Базовые объекты Python
  42. Объединение строк с помощью метода join
  43. Форматирование даты с strftime()
  44. Генераторы списков в Python
  45. Объявление переменных в Python
  46. Создание функций высшего порядка

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