python对元素进行排序
列表的排序方法sort()
list.sort(key=None, reverse=False)
key – 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
reverse – 排序规则,reverse = True 降序, reverse = False 升序(默认)
key指定一个函数
内置排序函数sorted()
对可迭代的序列排序生成新的列表([ ])
sorted(Iterable,key=None, reverse=False)
Iterable – 可迭代的序列(字符串、列表、元组)
key – 主要是用来进行比较的元素,可以指定多个参数
reverse – 排序规则,reverse = True 降序, reverse = False 升序(默认)
字符串
元组
列表
列表元素类型必须相同才能排序
借助operator模块的itemgetter
operator模块提供的itemgetter函数用于获取对象的哪些维的数据,参数为一些序号
要注意,operator.itemgetter函数获取的不是值,而是定义了一个函数,通过该函数作用到对象上才能获取值
排序面试题
列表嵌套列表排序,年龄数字相同怎么办?
根据键对字典排序
方法一:zip函数
方法二:使用字典items方法
使用lambda函数对list排序foo = [-5,8,0,4,9,-4,-20,-2,8,2,-4],输出结果为
[0,2,4,8,8,9,-2,-4,-4,-5,-20],正数从小到大,负数从大到小
应用