有序字典
一、简介
Python中的字典的特性:无序性。
有序字典和通常字典类似,只是它可以记录元素插入其中的顺序,而一般字典是会以任意的顺序迭代的。
二、普通字典
#!?/usr/bin/env?python3 #?-*-?coding:utf-8?-*- d1?=?{} d1['a']?=?'A' d1['b']?=?'B' d1['c']?=?'C' d1['d']?=?'D' for?k,?v?in?d1.items(): ????print(k,?v)
输出结果为:
c?C b?B a?A d?D
由上面的结果可以看出对普通字典的遍历,输出结果是无序的。
三、有序字典
#!?/usr/bin/env?python3 #?-*-?coding:utf-8?-*- import?collections d1?=?collections.OrderedDict() d1['a']?=?'A' d1['b']?=?'B' d1['c']?=?'C' d1['d']?=?'D' for?k,?v?in?d1.items(): ????print(k,?v)
输出结果为:
a?A b?B c?C d?D
对比两种输出结果,不难发现,有序字典可以按字典中元素插入的顺序来输出。
上面两个例子之所以字典中插入元素,而不是一开始就将字典中的元素定义好,是因为有序字典的作用只是记住元素插入顺序并按插入的顺序输出。