例如一个字典

1 dict = {}

当需要往dict中添加元素:

 

dict[1] = “张三”

dict[2] = "李四"

dict[3] = "王五"

添加到字典中后,在字典中的顺序是不定的。当我再次从字典中取出时希望按照原来存入的顺序,我使用的是下面这种方式。

新建一个list

list = []

list.append({1:张三})

list.append({2:李四})

list.append({3:王五})

for i in range(len(list)):

  list[i].key

  list[i].val

这样因为list是有序的,相当于每一个元素都是只有一个元素的字典。

再次读取的时候遍历列表从而获得字典的key和value。得到的顺序可以和原先存入的顺序相同。

 

不知道这么做会不会影响性能。。。初学python,这种方法可以解决字典存入时的顺序问题。所以就用了,

 

通过百度,发现可以使用collentions.OrderdDict()  

OrderdDict为有序字典,OrderdDict是dict的子类,它可以记住字典在添加时的顺序。(Python 2.7+版本)可以使用

z = collections.OrderedDict()
z[ 'banji'] = 'sanban',
z[ 'xuexiao'] = 'hongxing',
z[ 'nianji'] = 'wunianji'

 

遍历字典方法:

方法 一:

for k in z.keys():

  print z[k]

方法二:

for (d,x) in z.items():
     print "key:"+d+",value:"+str(x)

 

欢迎批评指正,谢谢!

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-07-31
  • 2022-12-23
猜你喜欢
  • 2022-01-24
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-08-06
  • 2022-12-23
相关资源
相似解决方案