python的sorted函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python的sorted函数相关的知识,希望对你有一定的参考价值。

sorted很简单,没太多好写的 ,只是给自己做个笔记。

sorted接受三个参数,返回一个排序之后的list。

第一个接受一个可迭代的对象(根据duck typing,不一定需要list,可以迭代的对象就可以),返回一个排序之后的列表。

第二个接受一个布尔值,选择是否反转排序结果。

第三个接受一个回调函数,这个回调函数只能有一个参数(如果有多个参数,请用偏函数),根据这个函数的返回值进行排序。

这个返回值并不限定于这个可迭代对象的某个的元素,比如可以将每个元素中的某个key对应的value作为排序的依据,也可以根据其他结果,比如绝对值进行排序。

上个很简单的实例代码:

完整代码: https://github.com/blackmatrix7/python-learning/blob/master/other/sorted.py

__author__ = blackmatrix

temp_list = [4, -5, 7, 1, -3, 2, -9]

if __name__ == __main__:
    print(sorted(temp_list))
    # 反转
    print(sorted(temp_list, reverse=True))
    # 根据绝对值排序
    print(sorted(temp_list, key=lambda key: abs(key)))

输出结果

[-9, -5, -3, 1, 2, 4, 7]
[7, 4, 2, 1, -3, -5, -9]
[1, 2, -3, 4, -5, 7, -9]

 

以上是关于python的sorted函数的主要内容,如果未能解决你的问题,请参考以下文章

关于python的sorted函数的问题?

Python sorted 函数用法

python3中sorted函数里关于cmp这一参数的改变

python基础lambda函数以及和mapreducefilter和sorted函数的联合使用介绍

python--lambda表达式在sort函数中的使用

(转)Python3:sorted()函数及列表中的sort()函数