Python 怎样对数组或列表进行倒序排列

Lasted 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