在Python中使用列表时,有时可能需要反转列表的元素。 反转列表意味着列表的第一个元素变为最后一个,第二个元素变为倒数第二个,最后一个元素变为第一个,依此类推。

在Python中,根据您要执行的操作,有几种不同的方法可以用来反转列表。

reverse()方法

reverse() list 数据类型方法,可就地反转列表的元素。 此方法修改原始列表,而不是创建新列表。

reverse()方法的语法如下:

list.reverse()

reverse()不接受论点。

以下是示例:

capitals = ['Oslo', 'Skopje', 'Riga', 'Madrid']

capitals.reverse()

print('Reversed list:', capitals)
Reversed list: ['Madrid', 'Riga', 'Skopje', 'Oslo']

reversed()功能

reversed()是Python内置函数,它返回给定可迭代对象的反向迭代器。 原始列表未修改。

如果您只想以相反的顺序遍历列表中的元素,则可以使用reversed()函数,因为它比在原处反转元素要快。

reversed()函数的语法如下:

reversed(seq) 

其中seq是您要还原的列表。

下面是一个示例,该示例使用reversed()以相反的顺序遍历list的元素:

numbers = [1, 2, 3, 4]

for i in reversed(numbers) :
    print(i)
4
3
2
1

如果要将反转的迭代器转换为列表,请使用list()构造函数:

numbers = [1, 2, 3, 4]

print(list(reversed(numbers)))
[4, 3, 2, 1]

使用切片Slicing反转列表

切片Slice符号是Python的内置功能,可让您提取顺序数据类型的部分。 尽管不是十分Pythonic,但您可以使用[::-1]表示法反转列表:

numbers = [1, 2, 3, 4]

print(numbers[::-1])

切片列表的结果是一个包含提取元素的新列表。 原始列表未修改。

[4, 3, 2, 1]

结论

要在适当的位置反转Python列表,请使用reverse()方法。 如果只需要创建反向迭代器,请使用reversed()函数。

如果您有任何问题或反馈,请随时发表评论。