python中sorted怎么实现迭代排序?

美女程序员鼓励师

对列表进行排序的操作已经难不倒小伙伴们了,那么我们加深一下难度,对可迭代的列表进行操作。这里我们先理解下迭代,可以认为是一个程序的循环。那么,在列表中的迭代排序就需要用到我们今天所讲的sorted函数,下面我们对它的语法及具体内容进行讲解。

1.语法

sorted(iterable, key=None, reverse=False)

2.参数说明:

iterable -- 可迭代对象。

cmp -- 比较的函数,这个具有两个参数,参数的值都是从可迭代对象中取出,此函数必须遵守的规则为,大于则返回1,小于则返回-1,等于则返回0。

key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。

reverse -- 排序规则,reverse = True 降序 , reverse = False 升序(默认)。

3.返回值

返回重新排序的列表。

4.实例:嵌套字典

In [46]: d1={'a':1,'b':2}

 

In [47]: d2={'a':11,'b':1}

 

In [48]: d3={'a':10,'b':3}

 

In [49]: ld=[d1,d2,d3]

 

In [50]: ld

Out[50]: [{'a': 1, 'b': 2}, {'a': 11, 'b': 1}, {'a': 10, 'b': 3}]

 

In [51]: def get_b(d):

    ...:     return d.get('b')

    ...:

 

In [52]: sorted(ld,key=get_b)

Out[52]: [{'a': 11, 'b': 1}, {'a': 1, 'b': 2}, {'a': 10, 'b': 3}]


以上就是使用sorted实现迭代排序的方法,这里我们所说的sorted和sort不是一种函数,小伙伴们注意区分~

以上是 python中sorted怎么实现迭代排序? 的全部内容, 来源链接: utcz.com/z/541801.html

回到顶部