2 回答

TA貢獻(xiàn)2080條經(jīng)驗(yàn) 獲得超4個(gè)贊
sorted('Bnthony Hall', key=_sortkeyfunc)
這個(gè)是對(duì)字符串'Bnthony Hall'中字符排序,字符排序當(dāng)然要逐字符比較,傳給比較函數(shù)_sortkeyfunc的當(dāng)然是字符串中字符

TA貢獻(xiàn)1853條經(jīng)驗(yàn) 獲得超9個(gè)贊
Python幫助文檔中對(duì)sorted方法的講解:
sorted(iterable[,cmp,[,key[,reverse=True]]])
作用:返回一個(gè)經(jīng)過(guò)排序的列表。
第一個(gè)參數(shù)是一個(gè)iterable,返回值是一個(gè)對(duì)iterable中元素進(jìn)行排序后的列表(list)。
可選的參數(shù)有三個(gè),cmp、key和reverse。
1)cmp指定一個(gè)定制的比較函數(shù),這個(gè)函數(shù)接收兩個(gè)參數(shù)(iterable的元素),如果第一個(gè)參數(shù)小于第二個(gè)參數(shù),返回一個(gè)負(fù)數(shù);如果第一個(gè)參數(shù)等于第二個(gè)參數(shù),返回零;如果第一個(gè)參數(shù)大于第二個(gè)參數(shù),返回一個(gè)正數(shù)。默認(rèn)值為None。
2)key指定一個(gè)接收一個(gè)參數(shù)的函數(shù),這個(gè)函數(shù)用于從每個(gè)元素中提取一個(gè)用于比較的關(guān)鍵字。默認(rèn)值為None。
3)reverse是一個(gè)布爾值。如果設(shè)置為True,列表元素將被倒序排列。
key參數(shù)的值應(yīng)該是一個(gè)函數(shù),這個(gè)函數(shù)接收一個(gè)參數(shù)并且返回一個(gè)用于比較的關(guān)鍵字。對(duì)復(fù)雜對(duì)象的比較通常是使用對(duì)象的切片作為關(guān)鍵字。例如:
students = [('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10)]
sorted(students, key=lambda s: s[2]) #按年齡排序
# [('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]
添加回答
舉報(bào)