• 对字典的处理


    一、对字典的值大小进行排序
    from random import randint
    
    d = {x: randint(60, 100) for x in 'xyzabcd'}
    '''第一种方法使用zip()方法将字典转化为元组'''
    d2 = zip(d.itervalues(), d.iterkeys())
    
    print sorted(d2)
    '''第二种方法sorted的key参数'''
    d3 = d.items()
    print sorted(d3, key= lambda x:x[1])

    二、在多个字典中找公共键
    from random import randint,sample
    
    s1 = {x: randint(1,4) for x in sample('abcdefg',randint(3, 6))}
    s2 = {x: randint(1,4) for x in sample('abcdefg',randint(3, 6))}
    s3 = {x: randint(1,4) for x in sample('abcdefg',randint(3, 6))}
    '''第一种方法'''
    result = s1.viewkeys() & s2.viewkeys() & s3.viewkeys()
    
    '''第二种方法:map()和reduce()'''
    r = map(dict.viewkeys, [s1, s2, s3])
    result = reduce(lambda a, b: a & b, r)

    三、保持字典有序
    使用collections中的OrderedDict()
    from collections import OrderedDict
    
    d = OrderedDict()
    d['lim'] = (1, 39)
    d['lin'] = (2, 55)
    d['li'] = (3, 60)
    
    for k in d:
        print k
     
     
  • 相关阅读:
    深入了解Struts2返回JSON数据的原理及具体应用范例
    Struts国际化
    LeetCode Balanced Binary Tree
    LeetCode Triangle
    Binary Tree Level Order Traversal
    Pow(x,n)
    Symmetric Tree
    LeetCode Word Search
    LeetCode Insert Interval
    Maximum Depth of Binary Tree
  • 原文地址:https://www.cnblogs.com/misslin/p/6689518.html
Copyright © 2020-2023  润新知