杰瑞科技汇

Python for range如何实现倒序遍历?

在 Python 中,可以使用 range() 函数结合负步长来实现倒序循环,以下是几种常见的方法:

Python for range如何实现倒序遍历?-图1
(图片来源网络,侵删)

方法 1:使用 range(start, stop, step) 负步长

for i in range(5, 0, -1):
    print(i)

输出:

5
4
3
2
1
  • 参数说明
    • start:起始值(包含)
    • stop:结束值(不包含)
    • step:步长(负数表示倒序)

方法 2:从列表/字符串倒序遍历

如果需要遍历列表或字符串的倒序,可以直接用 reversed() 或切片:

# 使用 reversed()
my_list = [1, 2, 3, 4, 5]
for item in reversed(my_list):
    print(item)
# 使用切片倒序(推荐)
for item in my_list[::-1]:
    print(item)

输出:

5
4
3
2
1

方法 3:结合 len() 倒序遍历索引

my_list = ['a', 'b', 'c', 'd']
for i in range(len(my_list)-1, -1, -1):
    print(my_list[i])

输出:

Python for range如何实现倒序遍历?-图2
(图片来源网络,侵删)
d
c
b
a

注意事项

  1. stop 的值不包含range(5, 0, -1) 会到 1 为止,不会输出 0
  2. 避免空循环start < stop 且步长为负,循环不会执行(如 range(1, 5, -1) 不会输出任何内容)。
  3. 性能:直接使用 reversed() 或切片通常比手动 range() 更直观。

需求 示例代码
数字倒序(5到1) for i in range(5, 0, -1): print(i)
列表倒序遍历 for item in my_list[::-1]: print(item)
字符串倒序遍历 for char in "hello"[::-1]: print(char)
倒序获取索引 for i in range(len(my_list)-1, -1, -1): print(my_list[i])

根据场景选择最合适的方法即可!

Python for range如何实现倒序遍历?-图3
(图片来源网络,侵删)
分享:
扫描分享到社交APP
上一篇
下一篇