Python內置的sorted()函數就能夠對list進行排序
sorted()也是一個高階函數。用sorted()排序的關鍵在於實現一個映射函數,也就是key函數函數
使用示例spa
數字排序code
sorted([36, 5, -12, 9, -21]) #輸出:[-21, -12, 5, 9, 36]
接收一個key函數來實現自定義的排序
key指定的函數將做用於list的每個元素上,並根據key函數返回的結果進行排序blog
sorted([36, 5, -12, 9, -21], key=abs) #輸出:[5, 9, -12, -21, 36]
字符串排序
默認狀況下,對字符串排序,是按照ASCII的大小比較的,因爲'Z' < 'a',結果,大寫字母Z會排在小寫字母a的前面排序
sorted(['bob', 'about', 'Zoo', 'Credit']) #輸出:['Credit', 'Zoo', 'about', 'bob']
字符串排序(忽略大小寫)字符串
sorted(['bob', 'about', 'Zoo', 'Credit'], key=str.lower) #輸出:['about', 'bob', 'Credit', 'Zoo']
字符串排序(忽略大小寫,且反方向)it
sorted(['bob', 'about', 'Zoo', 'Credit'], key=str.lower, reverse=True) #輸出:['Zoo', 'Credit', 'bob', 'about']