sorted()

sorted() 用于对一个可迭代的对象进行排序,一般都是用来对字典进行排序,结果返回排序后的新的列表,语法如下:

sorted(iterable, cmp=None, key=None, reverse=False) --> new sorted list

iterable:要进行排序的可迭代对象
cmp=None:
key=None:None可以是带一个参数的函数,这个函数返回一个值用来排序,默认为None
reverse=False:排序规则,默认reverse=False是升序排序,如果reverse=True则表示降序排序

常见用法如下:

In [1]: import operator

In [2]: x = {1:2, 3:4, 4:3, 2:1, 0:0}

In [3]: sorted(x.iteritems(), key=operator.itemgetter(0))                  # 根据字典的key进行排序
Out[3]: [(0, 0), (1, 2), (2, 1), (3, 4), (4, 3)]

In [4]: sorted(x.iteritems(), key=operator.itemgetter(1))                  # 根据字典的value进行排序
Out[4]: [(0, 0), (2, 1), (1, 2), (4, 3), (3, 4)]

In [5]: sorted(x.iteritems(), key=operator.itemgetter(0), reverse=True)    # 根据字典的key进行反序排序
Out[5]: [(4, 3), (3, 4), (2, 1), (1, 2), (0, 0)]

In [6]: sorted(x.iteritems(), key=operator.itemgetter(1), reverse=True)    # 根据字典的value进行反序排序
Out[6]: [(3, 4), (4, 3), (1, 2), (2, 1), (0, 0)]

    

猜你喜欢

转载自www.cnblogs.com/pzk7788/p/10299673.html