list.sort() 是class list下面的一個函數,是列表獨有的,list.sort排序是在原有列表上進行的,list本身的順序會變,list.sort不會生成返回一個新的list,只是返回None
a = [6, 2, 1, 4]
a.sort()
print(a.sort())
print(a)
sorted() 是python中的內置函數,不改變原有對象的值,新生成一個列表對象,並返回;不僅僅只能將list作為參數傳遞進去,還可以接收任何形式的可迭代對象作為參數,甚至是不可變序列或者生成器,不管是接收的什么參數sorted()都是返回一個列表
(1)列表
a = [6, 2, 1, 4]
sorted(a)
print(sorted(a))
print(a)
(2)元祖
a = (6, 2, 1, 4)
sorted(a)
print(sorted(a))
print(a)
帶參數 reverse參數,reverse=False為升序排序(默認);reverse=True為降序排序
>>> a=[1,2,5,3,9,4,6,8,7,0,12] >>> a.sort(reverse=False) >>> a [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 12] >>> a=[1,2,5,3,9,4,6,8,7,0,12] >>> a.sort(reverse=True) >>> a [12, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
>>>a=[1,2,5,3,9,4,6,8,7,0,12]
>>>b = sorted(a, reverse=False)
>>>b
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 12]
list 的 sort 方法返回的是對已經存在的列表進行操作,而內建函數 sorted 方法返回的是一個新的 list,而不是在原來的基礎上進行的操作