如何使用 Python 反转列表或数组
反转数组是你可能用于游戏或显示排序列表时的常用技术。Python 有几种方法可以做到这一点。
反转列表或数组是一项常见的编程任务。在许多情况下,你可能需要以相反的顺序呈现数据,例如在对列表进行排序时。
如何使用 Python 反转列表或数组?你将在本文中了解不同的方法。
使用 for 循环创建副本
虽然Python 的 for 循环更冗长,但在某些情况下它可能很方便。例如,在反向操作的某些点执行复杂逻辑时,它提供了更大的灵活性。
相关:如何在Python中使用For循环 https://www.linuxmi.com/python-for-loops.html
当使用缩进的 for循环时,常用的方法是以相反的顺序遍历原始列表。从最后一个元素开始,每次迭代都将前一个元素附加到一个新列表中。
以 1 到 9 之间的整数列表为例,以下是使用缩进的for循环反转数组的方法:
languages = [1, 2, 3, 4, 5, 6, 7, 8, 9]
# 创建一个空列表来保存反向数组:
reversed_list = []
# 从原始数组的长度中减去一,以从最后一个索引开始:
reducer = len(languages)-1
# 在for循环中反转列表:
for i in languages:
reversed_list.append(languages[reducer]) # 将结果追加到空列表
reducer -=1 # 使用reducer在每次迭代时将索引减少1
print(reversed_list)
输出:
[9, 8, 7, 6, 5, 4, 3, 2, 1]
使用列表推导式反转列表或数组
列表推导产生更短的代码。并且不需要临时变量,因为列表理解作用于适当的列表。
要执行前面的操作,使用列表推导:
reducer = len(languages)
# 在列表推导式中,使用for循环在范围函数中递减索引
Reversed_list = [languages[reducer] for reducer in range(reducer -1,-1,-1)]
print(Reversed_list)
输出:
[9, 8, 7, 6, 5, 4, 3, 2, 1]
使用切片运算符
列表切片运算符非常简单,尽管它有一些限制。例如,你可能无法像使用for循环时那样自定义输出。
以下是使用切片运算符反转列表的方法:
languages = [1, 2, 3, 4, 5, 6, 7, 8, 9]
rev_list = languages[::-1]
print(rev_list)
输出:
[9, 8, 7, 6, 5, 4, 3, 2, 1]
[ ::-1]语法是一个巧妙的快捷方式,它会产生一个反向列表。它实际上意味着“复制列表的每个元素,从末尾开始倒数”——即“反转它”!
使用数组的反转方法
这是另一种有效的方法:它修改原始数组。这可能是一个缺点,因为你不能为其他操作保留先前的列表。
以下是使用 reverse 方法反转数组的方法:
languages = [1, 2, 3, 4, 5, 6, 7, 8, 9]
languages.reverse()
print(languages)
输出:
[9, 8, 7, 6, 5, 4, 3, 2, 1]
使用反转reversed函数
reversed 函数遍历列表、数组或任何其他序列并返回其反向副本。但是,你需要将反向输出显式声明为列表。
这是它的工作原理:
languages = [1, 2, 3, 4, 5, 6, 7, 8, 9]
print(list(reversed(languages)))
输出:
[9, 8, 7, 6, 5, 4, 3, 2, 1]
使用数组获得创意
数组或列表是存储数据的常用方法。根据你的目标,你可能希望以相反的顺序将数据呈现给客户端。一种方法是在渲染之前反转数组或列表。如你所见,有几种方法可以在 Python 中反转列表。选择最适合你并与你针对特定问题的逻辑保持一致的方法。
你可能还想了解如何在其他编程语言中反转数组以更好地理解后台逻辑。 见:https://www.linuxmi.com/c-python-javascript-reverse-array.html
The post 如何使用 Python 反转列表或数组 first appeared on Linux迷.
共有 0 条评论