Python OrderedDict字典排序方法如何实现详细解析?

2026-05-25 00:050阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计429个文字,预计阅读时间需要2分钟。

Python OrderedDict字典排序方法如何实现详细解析?

许多人都认为Python中的字典是无序的,因为它是按照hash值来存储的。但Python中有一个模块collections(中文:集合、集合),其中自带了一个子类OrderedDict,实现了对字典中元素的排序。

很多人认为python中的字典是无序的,因为它是按照hash来存储的,但是python中有个模块collections(英文,收集、集合),里面自带了一个子类

OrderedDict,实现了对字典对象中元素的排序。请看下面的实例:

import collections print "Regular dictionary" d={} d['a']='A' d['b']='B' d['c']='C' for k,v in d.items(): print k,v print "\nOrder dictionary" d1 = collections.OrderedDict() d1['a'] = 'A' d1['b'] = 'B' d1['c'] = 'C' d1['1'] = '1' d1['2'] = '2' for k,v in d1.items(): print k,v 输出: Regular dictionary a A c C b B Order dictionary a A b B c C 1 1 2 2

可以看到,同样是保存了ABC等几个元素,但是使用OrderedDict会根据放入元素的先后顺序进行排序。所以输出的值是排好序的。

阅读全文

本文共计429个文字,预计阅读时间需要2分钟。

Python OrderedDict字典排序方法如何实现详细解析?

许多人都认为Python中的字典是无序的,因为它是按照hash值来存储的。但Python中有一个模块collections(中文:集合、集合),其中自带了一个子类OrderedDict,实现了对字典中元素的排序。

很多人认为python中的字典是无序的,因为它是按照hash来存储的,但是python中有个模块collections(英文,收集、集合),里面自带了一个子类

OrderedDict,实现了对字典对象中元素的排序。请看下面的实例:

import collections print "Regular dictionary" d={} d['a']='A' d['b']='B' d['c']='C' for k,v in d.items(): print k,v print "\nOrder dictionary" d1 = collections.OrderedDict() d1['a'] = 'A' d1['b'] = 'B' d1['c'] = 'C' d1['1'] = '1' d1['2'] = '2' for k,v in d1.items(): print k,v 输出: Regular dictionary a A c C b B Order dictionary a A b B c C 1 1 2 2

可以看到,同样是保存了ABC等几个元素,但是使用OrderedDict会根据放入元素的先后顺序进行排序。所以输出的值是排好序的。

阅读全文