简体   繁体   中英

Use of Ordered Dict

I am learning about python collections. It is written about Ordered Dictionary that " OrderedDict preserves the order in which the keys are inserted. A regular dict doesn't track the insertion order, and iterating it gives the values in an arbitrary order. By contrast, the order the items are inserted is remembered by OrderedDict. "

So i tried to understand it by a program:

from collections import OrderedDict 

d = dict()
d['a'] = 1
d['b'] = 2
d['c'] = 3
d['d'] = 4
  
for key, value in d.items(): 
    print(key, value) 
  
print("\nThis is an Ordered Dict:\n") 
od = OrderedDict() 
od['a'] = 1
od['b'] = 2
od['c'] = 3
od['d'] = 4
  
for key, value in od.items(): 
    print(key, value) 

OUTPUT

a 1
b 2
c 3
d 4

This is an Ordered Dict:

a 1
b 2
c 3
d 4
>>> 

But the output for both is the same. So why should I use Ordered Dictionary?

Since python 3.7 Dictionary order is guaranteed to be insertion order. check this answer for similar question link

because-- If the value of a certain key is changed, the position of the key remains unchanged in OrderedDict.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM