• 关于字典存进去数据会变乱的问题。字典排序


    例如一个字典

    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)

    欢迎批评指正,谢谢!

  • 相关阅读:
    sujection重构
    serialize存入数组
    migration integer limit option
    FineReport——FS
    Oracle事务处理
    FineReport——发送邮件
    FineReport——登录不到决策系统
    FineReport——JS二次开发(复选框全选)
    FineReport——JS二次开发(局部刷新)
    FineReport——JS二次开发(工具栏按钮事件及说明)
  • 原文地址:https://www.cnblogs.com/zhangkaikai/p/6039649.html
Copyright © 2020-2023  润新知