精华内容
下载资源
问答
  • 字典排序

    2012-03-01 09:58:03
    字典排序,c语言
  • 字典排序 题目:dic={"name":"zs","age":18,"city":"深圳","tel":"13626266"}要求:字典根据键从小到大排序;方法一:解题思路:字典无序的,需要转为列表然后用sort函数排序,dict2 = {"name":"zs","age":"18",...

    8c8e7fc582df302794c611d187ce8d8f.png
    • 字典排序

    题目:dic={"name":"zs","age":18,"city":"深圳","tel":"13626266"}

    要求:字典根据键从小到大排序;

    方法一:解题思路:字典无序的,需要转为列表然后用sort函数排序,

    dict2 = {"name":"zs","age":"18","city":"深圳","tel":"13626266"}
    a=list(dict2.items()) # dict2.items转为list方法
    a.sort()
    print(a)

    输出:

    [('age', "18"), ('city', '深圳'), ('name', 'zs'), ('tel', '13626266')]

    方法二:可以用sorted排序来使用,sorted支持所有类型的排序,故字典也支持;

    dict2 = {"name":"zs","age":"18","city":"深圳","tel":"13626266"}
    for i in sorted(dict2):
        print(i,dict2[i])

    输出:

    age 18
    city 深圳
    name zs
    tel 13626266

    方法三:

    特别注意,如果列表排序返回为空(None),是因为sort函数方法用错;如下:

    # 正确用法
    a = [3,2,1]
     
    a.sort()
    
    print(a)

    输出:

    [1, 2, 3]

    错误用法:

    # 错误用法
    b = [3,1,2]
    print(b.sort()) 
    
    # 错误用法
    c = [3,1,2]
    c1=c.sort()
    print(c1) 

    输出:

    None
    None

    拓展:如果字典中的值排序,则通过“__getitem__”函数;

    dict2 = {"name":"zs","age":"18","city":"深圳","tel":"13626266"}
    for i in sorted(dict2,key=dict2.__getitem__):
        print(i,dict2[i])

    输出:

    tel 13626266
    age 18
    name zs
    city 深圳
    展开全文
  • python中字典排序,列表中的字典排序一.使用python模块:operatorimport operator #首先要导入模块operatorx = {1:2, 3:4, 4:3, 2:1, 0:0}sorted_x = sorted(x.iteritems(), key=operator.itemgetter(1)) #按字典值...

    python中字典排序,列表中的字典排序

    一.使用python模块:operator

    import operator #首先要导入模块operator

    x = {1:2, 3:4, 4:3, 2:1, 0:0}

    sorted_x = sorted(x.iteritems(), key=operator.itemgetter(1)) #按字典值排序(默认为升序)

    print(sorted_x) #[(0, 0), (2, 1), (1, 2), (4, 3), (3, 4)]

    sorted_x = sorted(x.iteritems(), key=operator.itemgetter(1), reverse=True) #如果要降序排序(一),可以指定reverse=True

    #sorted_x.reverse()#排序二:或者直接使用list的reverse方法将sorted_x顺序反转

    print (sorted_x) #[(3, 4), (4, 3), (1, 2), (2, 1), (0, 0)]

    二. 更为常用的方法是,用lambda表达式

    x = {1:2, 3:4, 4:3, 2:1, 0:0}

    sorted_x = sorted(x.items(), key=lambda x : x[1])

    print(sorted_x) #[(0, 0), (2, 1), (1, 2), (4, 3), (3, 4)]

    sorted_x = sorted(x.items(), key=lambda x : x[1], reverse=True)

    print(sorted_x) #[(3, 4), (4, 3), (1, 2), (2, 1), (0, 0)]

    三. 包含字典dict的列表list的排序方法与dict的排序类似,如下:

    方法一:使用python模块:operator

    import operator

    x = [{'name':'Homer', 'age':39}, {'name':'Bart', 'age':10}]

    sorted_x = sorted(x, key=operator.itemgetter('name'))

    print(sorted_x) #[{'age': 10, 'name': 'Bart'}, {'age': 39, 'name': 'Homer'}]

    sorted_x = sorted(x, key=operator.itemgetter('name'), reverse=True)

    print(sorted_x) #[{'age': 39, 'name': 'Homer'}, {'age': 10, 'name': 'Bart'}]

    方法二:使用lambda表达式

    x = [{'name':'Homer', 'age':39}, {'name':'Bart', 'age':10}]

    sorted_x = sorted(x, key=lambda x : x['name'])

    print(sorted_x) #[{'age': 10, 'name': 'Bart'}, {'age': 39, 'name': 'Homer'}]

    sorted_x = sorted(x, key=lambda x : x['name'], reverse=True)

    print(sorted_x) #[{'age': 39, 'name': 'Homer'}, {'age': 10, 'name': 'Bart'}]

    展开全文
  • Python 字典排序,列表嵌套字典排序 列表排序 1)使用sort(),sort没有返回值,排序后直接作用于列表本身,默认升序 ll = [4, 6, 2, 7, 3, 1, 8] ll.sort() print(ll) >>>[1, 2, 3, 4, 6, 7, 8] ll = ...

    Python 字典排序,列表嵌套字典排序

    1. 列表排序
      1)使用sort(),sort没有返回值,排序后直接作用于列表本身,默认升序
    ll = [4, 6, 2, 7, 3, 1, 8]
    ll.sort()
    print(ll)
    
    >>>[1, 2, 3, 4, 6, 7, 8]
    
    ll = [4, 6, 2, 7, 3, 1, 8]
    ll.sort(reverse=True)
    print(ll)
    
    >>>[8, 7, 6, 4, 3, 2, 1]
    

    2)使用sorted(),sorted有返回值,默认升序

    ll = [4, 6, 2, 7, 3, 1, 8]
    sorted_ll = sorted(ll)
    print(sorted_ll)
    
    >>>[1, 2, 3, 4, 6, 7, 8]
    
    ll = [4, 6, 2, 7, 3, 1, 8]
    sorted_ll = sorted(ll, reverse=True)
    print(sorted_ll)
    
    >>>[8, 7, 6, 4, 3, 2, 1]
    
    1. 字典排序,使用sorted()函数,默认升序,排序的key通常使用lambda函数
    dict1 = {
    	'a': 6,
    	'c': 2,
    	'd': 5,
    	'b': 3,
    	'f': 1
    }
    sorted_dict = sorted(dict1.items(), key=lambda x: x[1])		# x[0]表示以键排序,x[1]表示以值排序
    print(sorted_dict)
    
    >>>[('f', 1), ('c', 2), ('b', 3), ('d', 5), ('a', 6)]
    
    dict1 = {
    	'a': 6,
    	'c': 2,
    	'd': 5,
    	'b': 3,
    	'f': 1
    }
    sorted_dict = sorted(dict1.items(), key=lambda x: x[1], reverse=True)
    print(sorted_dict)
    
    >>>('a', 6), ('d', 5), ('b', 3), ('c', 2), ('f', 1)]
    
    1. 列表嵌套字典排序,仍然使用sorted(),默认升序,排序的key使用lambda函数
    xxx = [{'name': 'Mike', 'age': 45}, {'name': 'Homer', 'age': 39}, {'name': 'Bart', 'age': 10}, {'name': 'Adam', 'age': 24}]
    # sorted第一个参数直接跟列表,lambda选取排序的字典的键
    xxx = sorted(xxx, key=lambda kkk: kkk['age'], reverse=True)
    print(xxx)
    
    >>>[{'name': 'Mike', 'age': 45}, {'name': 'Homer', 'age': 39}, {'name': 'Adam', 'age': 24}, {'name': 'Bart', 'age': 10}]
    
    展开全文
  • 字典排序字典c++写的

    2011-04-21 21:14:42
    字典排序字典序字典字典排序字典字典排序字典字典排序字典字典排序字典字典排序字典字典排序字典字典排序字典字典排序字典字典排序字典字典排序字典字典排序字典字典排序字典字典排序字典字典排序字典
  • python中字典排序,列表中的字典排序一.使用python模块:operatorimport operator #首先要导入模块operator x = {1:2, 3:4, 4:3, 2:1, 0:0} sorted_x = sorted(x.iteritems(), key=operator.itemgetter(1)) #按字典...

    python中字典排序,列表中的字典排序

    一.使用python模块:operator

    import operator #首先要导入模块operator
    
    x = {1:2, 3:4, 4:3, 2:1, 0:0}
    sorted_x = sorted(x.iteritems(), key=operator.itemgetter(1)) #按字典值排序(默认为升序)
    print(sorted_x)  #[(0, 0), (2, 1), (1, 2), (4, 3), (3, 4)]
    
    sorted_x = sorted(x.iteritems(), key=operator.itemgetter(1), reverse=True) #如果要降序排序(一),可以指定reverse=True
    #sorted_x.reverse()#排序二:或者直接使用list的reverse方法将sorted_x顺序反转
    print (sorted_x)  #[(3, 4), (4, 3), (1, 2), (2, 1), (0, 0)]
    

    二. 更为常用的方法是,用lambda表达式

    x = {1:2, 3:4, 4:3, 2:1, 0:0}
    
    sorted_x = sorted(x.items(), key=lambda x : x[1])
    print(sorted_x)  #[(0, 0), (2, 1), (1, 2), (4, 3), (3, 4)]
    
    sorted_x = sorted(x.items(), key=lambda x : x[1], reverse=True)
    print(sorted_x)  #[(3, 4), (4, 3), (1, 2), (2, 1), (0, 0)]
    

    三. 包含字典dict的列表list的排序方法与dict的排序类似,如下:

    方法一:使用python模块:operator

    import operator
    
    x = [{'name':'Homer', 'age':39}, {'name':'Bart', 'age':10}]
    
    sorted_x = sorted(x, key=operator.itemgetter('name'))
    print(sorted_x)  #[{'age': 10, 'name': 'Bart'}, {'age': 39, 'name': 'Homer'}]
    
    sorted_x = sorted(x, key=operator.itemgetter('name'), reverse=True)
    print(sorted_x)  #[{'age': 39, 'name': 'Homer'}, {'age': 10, 'name': 'Bart'}]
    

    方法二:使用lambda表达式

    x = [{'name':'Homer', 'age':39}, {'name':'Bart', 'age':10}]
    
    sorted_x = sorted(x, key=lambda x : x['name'])
    print(sorted_x) #[{'age': 10, 'name': 'Bart'}, {'age': 39, 'name': 'Homer'}]
    
    sorted_x = sorted(x, key=lambda x : x['name'], reverse=True)
    print(sorted_x)  #[{'age': 39, 'name': 'Homer'}, {'age': 10, 'name': 'Bart'}]
    

    转载于:https://www.cnblogs.com/pinpin/p/10169034.html

    展开全文
  • 关于字典排序的搜索结果问题从字典中提取子集【python问答学堂】17期问题你想构造一个字典,它是另外一个字典的子集。解决方案最简单的方式是使用字典推导。比如:往期回顾:python问答学堂-《python进阶大全》中你...
  • python中列表排序,字典排序,列表中的字典排序 #-*- encoding=utf-8 -*- # python3代码 import operator 一. 按字典值排序(默认为升序) x = {1:2, 3:4, 4:3, 2:1, 0:0} 1. sorted_x = sorted(x...
  • 主要介绍了python字典排序实现方法,实例分析了Python字典排序的相关技巧,需要的朋友可以参考下
  • 本文实例讲述了Python使用lambda表达式对字典排序操作。分享给大家供大家参考,具体如下:lambda表达式也常用于字典排序,既然写到字典排序,那就把按键排序和按值排序都写写好了。字典按键排序显然按键排序,需要用...
  • Python有序字典以及字典排序
  • 如图14-10-1所示实例14-10-1用sorted()对棋类字典排序.pyw,程序执行结果见图14-10-2:图14-10-1图14-10-2当用sorted()函数对字典临时排序的时候,如果要求字典键名从大到小排序,需要在sorted()中增加参数“reverse...
  • 主要介绍了Python实现字典排序、按照list中字典的某个key排序的方法,涉及Python字典与列表排序相关操作技巧,需要的朋友可以参考下
  • 一、字典排序在程序中使用字典进行数据信息统计时,由于字典是无序的所以打印字典时内容也是无序的。因此,为了使统计得到的结果更方便查看需要进行排序。Python中字典的排序分为按“键”排序和按“值”排序。1、按...
  • 一、字典排序在程序中使用字典进行数据信息统计时,由于字典是无序的所以打印字典时内容也是无序的。因此,为了使统计得到的结果更方便查看需要进行排序。Python中字典的排序分为按“键”排序和按“值”排序。1、按...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 16,673
精华内容 6,669
关键字:

字典排序