1. 程式人生 > >列表逆向排列的幾種實現形式

列表逆向排列的幾種實現形式

pan 排列 實現 參數 class 處理 叠代器 sort 改變

# ----------------------------------------------------------------------
# ----------------------------------------------------------------------
排列方向:
# ----------------------------------------------------------------------
li=[1,2,3,a,5,6]
res=li.reverse()
print(li)
print(res)
# [6, 5, ‘a‘, 3, 2, 1]
# None # 直接將原列表逆向排列,在原列表基礎上改,原列表發生改變 # ---------------------------------------------------------------------- li=[1,2,a,4,5,6] res=li[::-1] print(li) print(res) # [1, 2, ‘a‘, 4, 5, 6] # [6, 5, 4, ‘a‘, 2, 1] # 對列表進行反向切片,產生一個新的逆向列表,原列表不變。 # ----------------------------------------------------------------------
#li=[1,‘a‘,3,4,5,6] iterator=reversed(li) l=list(iterator) print(li) print(iterator) print(l) # [1, ‘a‘, 3, 4, 5, 6] # <list_reverseiterator object at 0x00000161225C8A90> # [6, 5, 4, 3, ‘a‘, 1] # 通過reversed對列表進行逆向處理後變為叠代器,通過遍歷該叠代器存入新列表,達到列表逆向 # 此時原列表不發生改變 # # ----------------------------------------------------------------------
# # ---------------------------------------------------------------------- 排序: li=[1,6,2,3,7,5,8] res=sorted(li,reverse=True) print(li) print(res) # [1, 6, 2, 3, 7, 5, 8] # [8, 7, 6, 5, 3, 2, 1] # # 用內置函數sorted對列表進行排序,默認是升序,逆序的話,將參數reverse=True就行。 # # 此方法不改變原列表,產生逆序的新列表 # ----------------------------------------------------------------------

這裏的最後一種方法sorted實際上不算逆向排列了,屬於排序,容易混淆,所以給出。

列表逆向排列的幾種實現形式