• Python


    字典安值排序是一个伪命题.
    字典本身是不能被排序的, 已经依照关键字(key)排序, 可是列表(list)和元组(tuple)能够排序, 所以字典须要转换列表后排序.

    import operator
    x = {1: 2, 3: 4, 4: 3, 2: 1, 0: 0}
    sorted_x = sorted(x.items(), key=operator.itemgetter(1))

    则是转换列表后的排序, dict(sorted_x) == x, 列表转换字典.


    代码

    # -*- coding: utf-8 -*-
    
    import operator
    
    x = {1: 2, 3: 4, 4: 3, 2: 1, 0: 0}
    # 依据值排序
    sorted_x = sorted(x.items(), key=operator.itemgetter(1))
    
    print 'x = ' + str(x)
    print 'sorted_x = ' + str(sorted_x)
    print 'dict(sorted_x) = ' + str(dict(sorted_x))
    
    x = {1: 2, 3: 4, 4: 3, 2: 1, 0: 0}
    sorted_x = sorted(x.items(), key=operator.itemgetter(0))
    
    print 'x = ' + str(x)
    print 'sorted_x = ' + str(sorted_x)
    print 'dict(sorted_x) = ' + str(dict(sorted_x))
    
    """
    输出:
    x = {0: 0, 1: 2, 2: 1, 3: 4, 4: 3}
    sorted_x = [(0, 0), (2, 1), (1, 2), (4, 3), (3, 4)]
    dict(sorted_x) = {0: 0, 1: 2, 2: 1, 3: 4, 4: 3}
    x = {0: 0, 1: 2, 2: 1, 3: 4, 4: 3}
    sorted_x = [(0, 0), (1, 2), (2, 1), (3, 4), (4, 3)]
    dict(sorted_x) = {0: 0, 1: 2, 2: 1, 3: 4, 4: 3}
    """

  • 相关阅读:
    linux安装nexus
    k8s批量删除资源
    spug 一个好用运维管理平台
    SpringMvc几种数据转化方法
    Esxi通过U盘启动
    LobHandler和LobCreator
    Spring的NamedParameterJdbcTemplate
    Spring中的JdbaTemplate
    Rufus
    UltraISO 注册码
  • 原文地址:https://www.cnblogs.com/jzssuanfa/p/7039553.html
Copyright © 2020-2023  润新知