Python中的逆序迭代


有时我们需要以逆序遍历列表的元素。为此,我们需要先读取最后一个元素,然后读取倒数第二个元素,依此类推,直到索引为 0 的元素。可以使用各种 Python 编程功能来实现这一点。

使用 range(N, -1, -1)

我们使用 range 函数,但从位置 -1 开始。此值帮助我们从最后一个索引值读取列表,并且我们以 -1 步长进行迭代。在下面的示例中,我们从一个位置开始,该位置通过获取列表的长度然后从最后一个位置开始以 -1 步长进行测量。

示例

list = ['Mon', 'Tue', 'Wed', 'Thu']
for i in range( len(list) - 1, -1, -1) :
   print(list[i])

输出

运行上述代码,我们将得到以下结果:

Thu
Wed
Tue
Mon

列表推导式和 [::-1]

此方法涉及切片列表,该列表从位置 -1 开始,向后到第一个位置。我们使用一个 for 循环,其中迭代器用作列表中元素的索引。

示例

list = ['Mon', 'Tue', 'Wed', 'Thu']
for i in list[::-1]:
   print(i)

输出

运行上述代码,我们将得到以下结果:

Thu
Wed
Tue
Mon

使用 reversed()

reversed() 函数非常简单明了,它只是选择元素并以相反的顺序打印它们。

示例

list = ['Mon', 'Tue', 'Wed', 'Thu']
for i in reversed(list) :
   print(i)

输出

运行上述代码,我们将得到以下结果:

Thu
Wed
Tue
Mon

更新于: 2019年8月7日

6K+ 浏览量

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告