2024年6月1日发(作者:)
python sorted用法
Python sorted用法
Python中的sorted函数是一种排序函数,可以对任
何可迭代对象进行排序。它有三个参数,分别是
iterable,key和reverse,其中iterable是要排序的可迭
代对象;key用来指定根据那个关键字进行排序;而
reverse则决定是升序还是降序排列,默认为False,也就
是升序排列,若把它设置为True,则进行降序排列。
1. 对列表进行排序
如果要对列表进行排序,可以使用sorted函数,例
如: list = [3,4,2,1] sorted(list) # [1,2,3,4]
可以看出,sorted函数会自动对列表按升序排列,如
果想按降序排列,可以使用reverse参数: list =
[3,4,2,1] sorted(list,reverse=True) # [4,3,2,1]
2. 对字典进行排序
如果想对字典进行排序,首先要先获取字典的keys或
者values,然后把它们转换成列表,并使用sorted函数进
行排序,例如: dic = {'a':5,'b':2,'c':7}
sorted(()) # ['a','b','c']
3. 根据关键字排序
如果想根据关键字进行排序,可以在sorted函数中使
用key参数,key参数允许传入一个函数,函数会作用于可
迭代对象中的每一个元素,并将返回结果作为排序的依
据,例如: li =
[{'name':'Tom','age':20},{'name':'Jack','age':18},{
'name':'Lily','age':22}] def getAge(dict):
return dict['age'] sorted(li,key=getAge) #
[{'name':'Jack','age':18},{'name':'Tom','age':20},{
'name':'Lily','age':22}]
可以看出,sorted函数会根据getAge函数的返回值
来进行排序,即把字典中的age属性作为排序的关键字,
这样就可以根据age属性来进行排序了。
4. 对多维列表进行排序
多维列表指的是由多个元素组成的列表,例如: list
= [['apple',8],['banana',6],['pear',10]]
要对多维列表进行排序,可以使用key参数,其中
key参数允许传入一个函数,函数会作用于可迭代对象中的
每一个元素,并把返回结果作为排序的依据,例如: def
getNumber(list): return list[1]
sorted(list,key=getNumber) #
[['banana',6],['apple',8],['pear',10]]
可以看出,sorted函数会根据getNumber函数的返回
值来进行排序,即把多维列表中的第二个元素作为排序的
关键字,这样就可以按照第二个元素来进行排序了。
总结
Python中的sorted函数可以对任何可迭代对象进行
排序,它有三个参数,iterable是要排序的可迭代对象;
key用来指定根据那个关键字进行排序;reverse则决定是
升序还是降序排列,默认为False,也就是升序排列,若把
它设置为True,则进行降序排列。另外,sorted函数还可
以根据关键字排序,只要在sorted函数中使用key参数,
并传入一个函数,函数会作用于可迭代对象中的每一个元
素,并将返回结果作为排序的依据。
发布者:admin,转转请注明出处:http://www.yc00.com/news/1717182550a2734949.html
评论列表(0条)