當前位置:成語大全網 - 新華字典 - python中怎麽給orderdict賦值

python中怎麽給orderdict賦值

Python中的字典對象可以以“鍵:值”的方式存取數據。OrderedDict是它的壹個子類,實現了對字典對象中元素的排序。比如下面比較了兩種方式的不同:

mport collections

print 'Regular dictionary:'

d={}

d['a']='A'

d['b']='B'

d['c']='C'

for k,v in d.items():

print k,v

print '\nOrderedDict:'

d=collections.OrderedDict()

d['a']='A'

d['b']='B'

d['c']='C'

for k,v in d.items():

print k,v

輸出結果如下:

Regular dictionary:

a A

c C

b B

OrderedDict:

a A

b B

c C

可以看到,同樣是保存了ABC三個元素,但是使用OrderedDict會根據放入元素的先後順序進行排序。由於進行了排序,所以OrderedDict對象的字典對象,如果其順序不同那麽Python也會把他們當做是兩個不同的對象,比如下面的代碼:

import collections

print 'Regular dictionary:'

d1={}

d1['a']='A'

d1['b']='B'

d1['c']='C'

d2={}

d2['c']='C'

d2['a']='A'

d2['b']='B'

print d1==d2

print '\nOrderedDict:'

d1=collections.OrderedDict()

d1['a']='A'

d1['b']='B'

d1['c']='C'

d2=collections.OrderedDict()

d2['c']='C'

d2['a']='A'

d2['b']='B'

print d1==d2

其輸出結果為:

Regular dictionary:

True

OrderedDict:

False