Найти - Пользователи
Полная версия: OrderedDict()
Начало » Python для новичков » OrderedDict()
1
Pavel32272
Объясните пожалуйста, смысл(что делает и зачем он) этого модуля, прям на пальцах.
OrderedDict()
py.user.next
Изначально словари в питоне dict() были неупорядочеными. Поэтому для создания упорядоченных словарей использовался этот тип collections.OrderedDict() . Сейчас dict() сделали упорядоченным.

Pavel32272
Объясните пожалуйста, смысл(что делает и зачем он) этого модуля, прям на пальцах.
По словарю можно итерировать - перебирать элементы по порядку.
  
>>> d = {'a': 1, 'b': 2, 'c': 3}
>>> for key in d:
...   print(key, '->', d[key])
... 
a -> 1
b -> 2
c -> 3
>>>

Если словарь неупорядоченный, то добавлять ты можешь элементы как a b c, а читаться они могут в любом порядке b c a, c b a, a c b и так далее. Порядок в словаре требует временных и памятных ресурсов, поэтому изначально словарь для скорости не содержал порядка внутри и работал быстрее. А сейчас они нашли какой-то недорогой способ поддерживать порядок словаря и включили его в последнии версии языка. Поэтому сейчас как ты записал словарь, так он и читается. А OrderedDict() всегда читает от первого ключа к последнему добавленному по порядку во всех версиях языка.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB