Python 怎樣對數組或列表進行倒序排列

最近更新時間 2020-12-13 20:28:02

在程序中,經常需要按數組倒序或反序重新排列數組。下面介紹在 Python 語言中使用 reverse() 函數倒序排列數組。

第一種: 使用 reverse() 函數反序重新排列數組,函數沒有返回值,直接更新傳入的列表。

# Python3 代碼
# 講解怎樣使用倒序排列數組列表

# 引入 os 庫
import os

# 初始化數組
systems = ["Windows", "macOS", 'Linux']
print('Before List:', systems)

# 反序排列
systems.reverse()

# 排序後的列表
print('After List:', systems)
Before List: ['Windows', 'macOS', 'Linux']
After List: ['Linux', 'macOS', 'Windows']

該函數只會按索引值逆序重新排列數組,不會比較數組的大小。如果再次調用 reverse() 函數,列表會回到最初的順序。

第二種: 使用列表切片操作符 [::-1],最後一個元素的索引值寫為 -1 會返回一個倒序的列表,如下所示:

# Python3 代碼
# 講解怎樣使用列表切片操作符倒序排列數組列表

# 引入 os 庫
import os

# 初始化數組
systems = ["Windows", "macOS", 'Linux']
print('Before List:', systems)

# 創建切片,最後一個元素索引值為 -1
after_list = systems[::-1]

# 排序後的列表
print('After List:', after_list)
Before List: ['Windows', 'macOS', 'Linux']
After List: ['Linux', 'macOS', 'Windows']

該函數會創建一個新對象,不適合處理大數據列表。

第三種: 如果需要反序遍歷列表的對象,最好使用 reversed() 函數,如下所示:

# Python3 代碼
# 講解怎樣使用 reversed() 函數

# 引入 os 庫
import os

# 初始化數組
systems = ["Windows", "macOS", 'Linux']

# 反序遍歷列表元素
for o in reversed(systems):
    print(o)
Linux
macOS
Windows
rss_feed