您好,登錄后才能下訂單哦!
有些時候,程序需要進行反向遍歷,此時可通過 reversed() 函數(shù),該函數(shù)可接收各種序列(元組、列表、區(qū)間等)參數(shù),然后返回一個“反序排列”的法代器,該函數(shù)對參數(shù)本身不會產(chǎn)生任何影響。
在交互式解釋器中,測試該函數(shù)的過程如下:
>>> a = range(10)
>>> [x for x in reversed(a)]
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
從上面代碼可以看出,通過 reversed() 函數(shù)得到了 range(10) 的反轉(zhuǎn)序列;但如果再次訪問 a,將會看到 a 并沒有發(fā)生改變:
>>> a
range(0, 10)
reversed() 當(dāng)然也可以對列表、元組進行反轉(zhuǎn)。例如如下測試代碼:
>>> b = ['a', 'fkit', 20, 3.4, 50]
>>> [x for x in reversed(b)]
[50, 3.4, 20, 'fkit', 'a']
前面提到過,str 其實也是序列,因此也可通過該函數(shù)實現(xiàn)在不影響字符串本身的前提下,對字符串進行反序遍歷。例如如下測試代碼:
>>> c = 'Hello,Charlie'
>>> [x for x in reversed(c)]
['e', 'i', 'l', 'r', 'a', 'h', 'C', ',', 'o', 'l', 'l', 'e', 'H']
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。