知行编程网知行编程网  2022-08-14 08:30 知行编程网 隐藏边栏  1,229 
文章评分 1 次,平均分 4.0
导语: 本文主要介绍了关于python怎么从小到大排列的相关知识,包括python比较大小,以及按从小到大的顺序排列这些编程知识,希望对大家有参考作用。

python如何从小到大排列

python提供了对list排序两种方法


1、使用list内置函数sort排序

list.sort(key=None,reverse=False)

eg:

In [57]: l=[27,47,3,42,19,9]
In [58]: l.sort()
In [59]: l
Out[59]: [3, 9, 19, 27, 42, 47]

上面是直接对 l 列表中的元素进行排序。 sort() 函数还提供了一个关键参数。该参数的值是一个函数。该函数只能有一个返回值,返回值用于比较。这种技术很快,因为 key 指定的函数将为每个元素准确调用。

In [53]: L = [('b',6),('a',1),('c',3),('d',4)]
In [54]: L.sort(key=lambda x:x[1])
In [56]: L
Out[56]: [('a', 1), ('c', 3), ('d', 4), ('b', 6)]

上一段,结合这个例子,我是这样理解的:匿名函数 lambda x:x[1] 等价于:

def f(x):
    return x[1]

key参数接受列表L中每个元素的第二个参数,根据第二个参数的排序决定整体排序。也就是说,key参数设置后,key接收到的值代表了整体,排序标准就变成了key接收到的值的排序。


2、使用python内置函数sorted排序

sorted 方法与 sort 方法非常相似,不同之处在于 sorted 不会改变原始列表,而是返回一个排序后的列表。并且 list.sort() 更改原始列表。同样, list.sort() 只能对列表进行排序,而 sorted() 可以对其他数据结构进行排序。

In [62]: l=[27,47,3,42,19,9]
In [63]: sorted(l)
Out[63]: [3, 9, 19, 27, 42, 47]

sorted方法同样可以用key参数,用法也是一样的。

In [68]: data=[{'name':'Abbie','score':99},{'name':'Ivy','score':80}]
In [69]: sorted(data,key=lambda x:x['score'])
Out[69]: [{'name': 'Ivy', 'score': 80}, {'name': 'Abbie', 'score': 99}]

python学习网,免费的在线学习
,欢迎关注!

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写
扫一扫二维码分享