您的位置:首頁技術文章
文章詳情頁

python中sort sorted reverse reversed函數的區別說明

瀏覽:30日期:2022-07-25 18:57:36

sort()是可變對象(字典、列表)的方法,無參數,無返回值,sort()會改變可變對象,因此無需返回值。

sort()方法是可變對象獨有的方法或者屬性,而作為不可變對象如元組、字符串是不具有這些方法的,如果調用將會返回一個異常。

代碼如下:

>>> a=[5,4,3,2,1]>>> a.sort()>>> [1, 2, 3, 4, 5]>>> a>>> [1, 2, 3, 4, 5]

sorted()是python的內置函數,并不是可變對象(列表、字典)的特有方法,sorted()函數需要一個參數(參數可以是列表、字典、元組、字符串),無論傳遞什么參數,都將返回一個以列表為容器的返回值,如果是字典將返回鍵的列表。

代碼如下:

>>> mystring='54321'>>> mytuple=(5,4,3,2,1)>>> mylist=[5,4,3,2,1]>>> sorted(mystring)>>>[1, 2, 3, 4, 5]>>>mystring>>>'54321'>>> sorted(mytuple)>>>[1, 2, 3, 4, 5]>>> sorted(mylist)>>>[1, 2, 3, 4, 5]

reverse()與sort的使用方式一樣,而reversed()與sorted()的使用方式相同。

代碼如下:

>>> mylist=[5,4,3,2,1]>>> mylist.reverse()>>> mylist>>>[1, 2, 3, 4, 5]>>> for i in reversed(mylist):>>>print i,>>>1 2 3 4 5

通過序列的切片也可以達到“逆轉”的效果

代碼如下:

>>> mystring='54321'>>> mytuple=(5,4,3,2,1)>>> mylist=[5,4,3,2,1]>>> mystring[::-1]>>>’12345’>>> mytuple[::-1]>>>(1, 2, 3, 4, 5)>>> mylist[::-1]>>>[1, 2, 3, 4, 5]

補充知識:python sorted()函數cmp,key,reverse參數詳解

Python幫助文檔中對sorted方法的講解:

sorted(iterable[,cmp,[,key[,reverse=True]]])

作用:返回一個經過排序的列表。

第一個參數是一個iterable,返回值是一個對iterable中元素進行排序后的列表(list)。

可選的參數有三個,cmp、key和reverse。

1)cmp指定一個定制的比較函數,這個函數接收兩個參數(iterable的元素),如果第一個參數小于第二個參數,返回一個負數;如果第一個參數等于第二個參數,返回零;如果第一個參數大于第二個參數,返回一個正數。默認值為None。

2)key指定一個接收一個參數的函數,這個函數用于從每個元素中提取一個用于比較的關鍵字。默認值為None。

3)reverse是一個布爾值。如果設置為True,列表元素將被倒序排列。

key參數的值應該是一個函數,這個函數接收一個參數并且返回一個用于比較的關鍵字。對復雜對象的比較通常是使用對象的切片作為關鍵字。

例如:

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)]

以上這篇python中sort sorted reverse reversed函數的區別說明就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
国产综合久久一区二区三区