用来切割可迭代对象
完整的切片包含两个冒号三个参数
其和range函数相似,步长默认为1,也可以为负数,方向是从左往右,负数的话是从右往左。
s =[start:end:step]
这就是一个切片,如果里面只有一个参数s = [start:]他就会从开始切到最后,方向也是从左网友
s =[start:end]如果有这样两个参数他会从start切到end,但不包括end,这是一个前闭后开的区间
s =[start:end:step]如果是这样三个参数,step为正数是从左往右,为负数时是从右往左。
>>> a=[0,1,2,3,4,8,6,2,3]
>>> a[0]
0
>>> a[:]
[0, 1, 2, 3, 4, 8, 6, 2, 3]
>>> a[::-1]
[3, 2, 6, 8, 4, 3, 2, 1, 0]
>>>
>>> a
[0, 1, 2, 3, 4, 8, 6, 2, 3]
>>> a[1:6:-1]
[]
前面两个参数是从左往右切,但给的步长为负数,自相矛盾,所以结果为空
还有前面两种全为负数的情况
[0, 1, 2, 3, 4, 8, 6, 2, 3]
>>> a[-3:-1]
[6, 2]
>>>
>>> a[-6::-1]
[3, 2, 1, 0]
>>>
-3的位置是6,-1的位置是2,默认步长为1所以是6和2
而-6的位置是3他要倒着切,切到最后所以是3,2,1,0