Различия между версиями 2 и 3
Версия 2 от 2017-11-03 12:13:43
Размер: 1577
Редактор: FrBrGeorge
Комментарий:
Версия 3 от 2017-11-03 16:30:17
Размер: 2363
Редактор: FrBrGeorge
Комментарий:
Удаления помечены так. Добавления помечены так.
Строка 26: Строка 26:
 * `frozenset`   *
  * +
`frozenset`
Строка 29: Строка 30:
Хешируется ключ, а хранится произвольный объект ⇒ Хешируется ключ, а хранится произвольный объект ⇒ ''ассоциативный массив'', хеш ключа в качестве индекса объекта
 * Конструктор словаря (+циклический)
 * методы
 * использование
  * …
  * +`frozendict`
 * Устройство современных (Python3.6+) словарей (описано [[https://morepypy.blogspot.ru/2015/01/faster-more-memory-efficient-and-more.html|здесь]]): прямая таблица объектов + хеш-таблица ''индексов'' + пометка на удаление вместо удаления + переупаковка
 * (если успеем) вся правда о пространствах имён
 * (если успеем) именные параметры функций
== Д/З ==
-----
Строка 31: Строка 42:
 * Организация (
== Д/З ==

Хеширование, множества и словари

Разбор Д/З

Повторение: строки

  • как последовательности (+особенности)
  • строковые методы
  • байтовые строки и кодировки

Хеширование

  • Определение: (f(x)=y: {y} << {x})

  • Возможные свойства и их применение:
    • равномерное покрытие ОЗ — хеш-таблицы
    • вероятная однозначность на небольшом подмножестве ОО — идентификация
    • невосстановимость x из y — шифрование

    • разброс (в т. ч. для почти похожих x) — много где

  • hash()

    • только константные объекты
  • Понятие об идеальной хеш-таблице, поиск в ней
  • Разрешение коллизий ключей в хеш-таблице: «вёдра» vs повторное хеширование

Множества

  • (это хеш-таблиы, как они есть)
  • Конструктор (в т. ч. циклический)
  • операции и методы
  • использование
    • +frozenset

Словари

Хешируется ключ, а хранится произвольный объект ⇒ ассоциативный массив, хеш ключа в качестве индекса объекта

  • Конструктор словаря (+циклический)
  • методы
  • использование
    • +frozendict

  • Устройство современных (Python3.6+) словарей (описано здесь): прямая таблица объектов + хеш-таблица индексов + пометка на удаление вместо удаления + переупаковка

  • (если успеем) вся правда о пространствах имён
  • (если успеем) именные параметры функций

Д/З


TODO

  • разбор задачи

LecturesCMC/PythonIntro2017/07_Dicts (последним исправлял пользователь FrBrGeorge 2017-11-09 23:19:33)