廖雪峰老師的python教程
我們常用類似於氣泡排序、快速排序等進行數字上的排序,在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碼從小到大的排序,通過限制key可完成無視大小寫等操作,進行反向排序,需要介入第三個引數reverse = true
sorted([
'bob'
,'about'
,'zoo'
,'credit'
], key=
str.lower, reverse=
true
)#忽略大小寫的反向排序['zoo', 'credit', 'bob', 'about']
對於字典格式,選擇排序方法可以在key中設定字典中的索引型別。
l =[(
'bob',75
),('adam',92
),('bart',66
),('lisa',88
)]#根據名字排序
defby_name
(t):
return t[0]
l1 =
sorted
(l, key=by_name)
#[('adam', 92), ('bart', 66), ('bob', 75), ('lisa', 88)]
#根據成績從高到底
defby_score
(t):
return
-t[1
]l2 =
sorted
(l,key=by_score)
#[('adam', 92), ('lisa', 88), ('bob', 75), ('bart', 66)]
使用sorted函式,可以減少排序演算法的思維複雜,減少了反覆造輪子的複雜性 python廖雪峰教程 學習筆記
如何用字元來描述字元 d匹配數字 digit w匹配字母或數字 word s可以匹配空格 space 表示任意個字元,表示至少乙個字元 表示0個或1個字元,表示n個字元,表示n m個字元 可以匹配任意字元 例如 kongxiangyu w如何做到更精確的匹配?規定數字 字母或者下劃線 0 9a za...
廖雪峰python教程學習筆記(函式)
1.max函式可以接收任意多個引數,並返回最大的那個 2.函式名其實就是指向乙個函式物件的引用,完全可以把函式名賦給乙個變數,相當於給這個函式起了乙個別名 3.在python中,定義乙個函式要用def語句,依次寫出函式名 括號 括號中的引數和冒號,然後在縮排塊中編寫函式體,函式的返回值用return...
python學習3(廖雪峰教程) 函式
1.函式定義 依次寫出函式名 括號 括號中的引數和冒號 然後,在縮排塊中編寫函式體,函式的返回值用return語句返回。def my abs x if x 0 return x else return x如果想定義乙個什麼事也不做的空函式,可以用pass語句 def nop passpass語句什麼...