Python trick:[::] & reversed—列表的倒序遍历

1. 问题场景

列表倒序遍历

length = 10
my_list = [i for i in range(length)]

2. 实现方法

2.1 rang()
for i in range(length-1, -1, -1):
    tmp = my_list[i]
2.2 reverse()
for a in reversed(my_list):
    tmp = a
2.3 [::-1]
for a in my_list[::-1]:
    tmp = a

3. 性能分析

(单位:秒)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4. 说明

4.1 reversed说明

reversed 函数返回一个反转的迭代器,可参考:菜鸟教程

print(type(reversed(my_list)))

out:<class 'list_reverseiterator'>
4.2 [::] 说明

Python序列切片地址可以写为[开始:结束:步长],三者都可以省略;
开始start省略时,默认从第0项开始;
结尾省略的时候,默认到数组最后;
步长省略的时候,默认为1;
而像上面代码那样写成[::-1],由于步长为负数,所以默认从后向前遍历~

发布了52 篇原创文章 · 获赞 4 · 访问量 2134

猜你喜欢

转载自blog.csdn.net/qq_42191914/article/details/103963291
今日推荐