如何使用 Python 反转列表或数组

如何使用 Python 反转列表或数组,第1张

反转列表或数组是一项常见的编程任务。在许多情况下,你可能需要以相反的顺序呈现数据,例如在对列表进行排序时。

如何使用 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 中反转列表。选择最适合你并与你针对特定问题的逻辑保持一致的方法。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/718862.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-25
下一篇 2022-04-25

发表评论

登录后才能评论

评论列表(0条)

保存