高阶函数之sorted
排序算法:
Python’内置的sorted()函数可对列表进行排序
>>> sorted([36, 5, -12, 9, -21])
[-21, -12, 5, 9, 36]
sorted()也是一个高阶函数,可接受一个key函数实现自定义排序。
>>> sorted([36, 5, -12, 9, -21], key=abs)
[5, 9, -12, -21, 36]
该排序函数:将所有的元素进行求绝对值后再进行排序
针对字符串排序:根据ASCII的大小来进行比较的,
>> sorted(['bob', 'about', 'Zoo', 'Credit'], key=str.lower)
['about', 'bob', 'Credit', 'Zoo']
若想让它根据字母顺序进行排列,方法是将所有字符同一转换为大写或者小写进行排序:
>>> sorted(['bob', 'about', 'Zoo', 'Credit'], key=str.lower)
['about', 'bob', 'Credit', 'Zoo']
若想进行反向排列,则需要加另一个参数:reverse
>>> sorted(['bob', 'about', 'Zoo', 'Credit'], key=str.lower, reverse=True)
['Zoo', 'Credit', 'bob', 'about']
小结
sorted()函数是一个高级函数,排序关键是在一实现一个映射函数。
本文介绍了Python内置的sorted()函数,用于对列表进行排序。它可以接受一个key函数进行自定义排序,如通过求绝对值进行排序。此外,通过设置reverse参数可以实现升序或降序排列。示例中展示了对字符串列表按小写排序以及反向排序的方法。sorted()函数是Python编程中的一个重要工具,尤其在处理复杂排序需求时。
492

被折叠的 条评论
为什么被折叠?



