1、Python中切片的索引方式分为两种:
- 正索引
- 负索引
2、切片操作的表达方式
object[start_index:end_index:step]
step:可以表示切片的步长,当为1时表示顺序存取。步长的正负可以表示取值的方向。当为正时,表示从左向右取值,当为负数时,表示从右向左取值。
start_index:表示起始索引(包含索引本身),可以确定切片的起始位置,当为空时,表示取到端点位置,具体是“起始端点”还是“结束端点”要看step的值,当为正时,表示左边为起始端点,从左向右取;当为负数时,表示右边为起始端点,从右向左取。
end_index:表示终止索引(不包含索引本身),可以确定索引的结束为止。当为空时表示取到“终点”,具体终点是在左边还是右边,要看step的值是正数还是负数。
3、切片操作详解
以列表a =[0,1,2,3,4,5,6,7,8,9]为例
>>>a=[0,1,2,3,4,5,6,7,8,9]
3.1· 取单个值
>>>a[5]
>>>5
>>>a[-4]
>>>6
3.2· 切取整个值
>>>a[:]#从左往右切取整个对象,此处的step = 1是省略的
>>>[0,1,2,3,4,5,6,7,8,9]
>>>a[::-1]#step的值控制输出的方向,负数为从右向左
>>>[9,8,7,6,5,4,3,2,1]
3.3·start_index 和end_index都是正(+)的情况
>>>a[1:6:1]
>>>[1,2,3,4,5]
step为1,默认从左往右开始取值,start位置为0,end位置为5,step方向和索引方向一致,输出[1,2,3,4<