最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

對python3 sort sorted 函數(shù)的應用詳解

 更新時間:2019年06月27日 15:31:40   作者:u010069176  
今天小編就為大家分享一篇對python3 sort sorted 函數(shù)的應用詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

python3 sorted取消了對cmp的支持。

python3 幫助文檔:

sorted(iterable,key=None,reverse=False)

key接受一個函數(shù),這個函數(shù)只接受一個元素,默認為None

reverse是一個布爾值。如果設置為True,列表元素將被倒序排列,默認為False

著重介紹key的作用原理:

key指定一個接收一個參數(shù)的函數(shù),這個函數(shù)用于從每個元素中提取一個用于比較的關鍵字。默認值為None 。

例1:

students = [('john', 'A', 15), ('jane', 'B', 12), ('dave','B', 10)]

sorted(students,key=lambda s: x[2]) #按照年齡來排序

結果:[('dave','B', 10), ('jane', 'B', 12), ('john', 'A', 15)]

例2:這是一個字符串排序,排序規(guī)則:小寫<大寫<奇數(shù)<偶數(shù)

s = 'asdf234GDSdsf23' #排序:小寫-大寫-奇數(shù)-偶數(shù)

print("".join(sorted(s, key=lambda x: (x.isdigit(),x.isdigit() and int(x) % 2 == 0,x.isupper(),x))))

原理:先比較元組的第一個值,F(xiàn)ALSE<TRUE,如果相等就比較元組的下一個值,以此類推。

先看一下Boolean value 的排序:

print(sorted([True,Flase]))===>結果[False,True]

Boolean 的排序會將 False 排在前,True排在后 .

1.x.isdigit()的作用是把數(shù)字放在前邊,字母放在后邊.

2.x.isdigit() and int(x) % 2 == 0的作用是保證奇數(shù)在前,偶數(shù)在后。

3.x.isupper()的作用是在前面基礎上,保證字母小寫在前大寫在后.

4.最后的x表示在前面基礎上,對所有類別數(shù)字或字母排序。

最后結果:addffssDGS33224

例3:一到面試題:

list1=[7, -8, 5, 4, 0, -2, -5]

#要求1.正數(shù)在前負數(shù)在后 2.整數(shù)從小到大 3.負數(shù)從大到小

sorted(list1,key=lambda x:(x<0,abs(x)))

解題思路:先按照正負排先后,再按照大小排先后。

以上這篇對python3 sort sorted 函數(shù)的應用詳解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

最新評論

绥德县| 夹江县| 阳信县| 德化县| 启东市| 聂荣县| 衡山县| 武陟县| 石河子市| 无为县| 白玉县| 合山市| 疏勒县| 岗巴县| 上林县| 松阳县| 郸城县| 绥芬河市| 辽源市| 陇西县| 东阿县| 包头市| 灵寿县| 雅江县| 宁武县| 固安县| 汝南县| 南投县| 永城市| 无极县| 昆明市| 博兴县| 望城县| 平塘县| 剑河县| 宁都县| 胶州市| 新巴尔虎左旗| 泸西县| 海伦市| 遵义县|