1. 程式人生 > >sorted()、sort()函式的使用

sorted()、sort()函式的使用

1.sort()

sort()用於對列表進行排序,其語法為:

list.sort(cmp=None, key=None, reverse=False)

其中,cmp是可選引數,如果指定了引數則按照指定的方法排序;key用來指定需要排序的元素;reverse為排序規則,reverse=False表示升序排序,reverse=True表示降序排序,False為預設值。該函式無返回值。 例1.

l=['s','f','r','g']
l.sort()
print(l)

輸出為:

['f', 'g', 'r', 's']

例2.按照指定元素排序

l=[(1,4),(2,3),(3,2),(4,1)]

def get(elem):
    return elem[1]

l.sort(key=get)
print(l)

輸出:

[(4, 1), (3, 2), (2, 3), (1, 4)]

2.sorted()

和sort()不同,sorted()可對任何可迭代物件進行排序,並且返回一個新的list。 sorted()的語法為:

sorted(iterable[, key[, reverse]]])

其中iterable為可迭代物件。 例:

l=[(1,4),(2,3),(3,2),(4,1)]

sorted(l,key=lambda x:x[1])

輸出:

[(4, 1), (3, 2), (2, 3), (1, 4)]