更新時(shí)間:2023-02-24 來源:黑馬程序員 瀏覽量:
Python中我們知道常見序列有字符串、元組和列表。進(jìn)行序列反序,我們可以利用內(nèi)置函數(shù)reversed()或range()來實(shí)現(xiàn),也可以用擴(kuò)展切片[::-1]的形式實(shí)現(xiàn)。假設(shè)一個(gè)序列是列表,我們還可以使用列表自帶的reverse()方法。
1)reversd()是Python的內(nèi)置函數(shù),它的參數(shù)可以是字符串、列表或者元組等序列。
2)利用range()方法生成序列的反序索引,然后從最后的元素遍歷到開始的元素,就可以反序輸出序列的元素。range(start,stop[,step])方法的參數(shù)說明:
·start:從start開始計(jì)數(shù)。默認(rèn)是從0開始。
·end:到end計(jì)數(shù)結(jié)束,但不包括end。
·step:步長,默認(rèn)為1。
3)seq[::-1]擴(kuò)展切片方法是利用了序列的切片操作,切片是序列的高級特性。seq[::-1]表示反向獲取seq中的所有元素,并且每次取一個(gè)。-1表示從序列的最后一個(gè)元素反向遍歷獲取。
4)如果是列表(list)序列,那么還可以直接用列表的reverse()方法。
示例代碼如下:
seq="Hello world" #reversed()內(nèi)置函數(shù)方法 for s in reversed(seq): print(s.end=") # 輸出換行 print() #range()函數(shù)方法 for i in range(len(seq)-1,-1,-1): s=seq[i] print(s,end=") # 輸出換行 print() #[::1]擴(kuò)展切片方法 for s in seq[::-1]: print(s,end=") # 輸出換行 print() #list自帶的reverse()方法 seq=[1,2,3,4,5,6] seq.reverse() for s in seq: print(s,end=") # 輸出換行 print()
代碼運(yùn)行結(jié)果為
dlrow olleH dlrow olleH dlrow olleH 654321