列表中使用切片时(list[star : stop : step]),可以正向也可以反向切片,当步调为正数时,则是正向索引,此时要求 star > stop
1 list = [1, 2, 3, 4, 5, 6, 7] 2 list[0:5:1]
此时切片的结果就是[1, 2, 3, 4, 5]
如果是star < stop或者, star > stop但step < 0,则返回空list
1 In [49]: list[0:5:-1] 2 Out[49]: [] 3 4 In [50]: list[5:0:1] 5 Out[50]: []
因此list的正向切片一定要注意star & stop & step这三个值的取法
list的反向切片方法:此时step必须要为负数,且star > stop,任何一点不满足,返回空列表
1 list[5:0:-1] 2 Out[51]: [6, 5, 4, 3, 2]
从下标为5开始输出到下标为1
range()函数的取值方法也是同上方法:
1 for i in range(6, 0, -1): 2 print (i)
返回结果是:
6
5
4
3
2
1
1 for i in range(6, 0, 1): 2 print (i)
返回结果是空,什么都没有。
正向同理,正常使用即可。
PS:无论list还是range(),它们的step参数都不能为0,0会报错