Python3基础10——切片

本文介绍了Python3中切片的基本语法和操作,包括起始索引、结束索引和步长的概念。切片操作不会修改原对象,而是创建新对象。详细解释了如何通过切片实现序列的截取,包括全切片、步长设置和反向序列的获取。同时强调了切片时确保步长方向与索引方向一致的重要性。
摘要由CSDN通过智能技术生成

切片的语法表达式为:[start_index : end_index : step]

start_index表示起始索引,end_index表示结束索引,step表示步长,步长不能为0,且默认值为1

切片操作是指按照步长,截取从起始索引到结束索引,但不包含结束索引(也就是结束索引减1)的所有元素。

切片不会改变原对象,而是重新生成了一个新的对象

>>> C = ['A','B','C','D','E','F']
>>> C[0:4:1]
['A', 'B', 'C', 'D']

省略start_index保留end_index,这样会从第一个元素开始,切到end_index - 1的元素为止

>>> C[:5]
['A', 'B', 'C', 'D', 'E']

保留start_index,但省略end_index,这样会从起始索引开始,切到最后一个元素为止:

>>> C[2:]
['C', 'D', 'E', 'F']

省略start_indexend_indexstep,这样就表示就表示切片整个序列,也就是复制出了一个新的序列:

>>> C[:]
['A', 'B', 'C', 'D', 'E', 'F']

省略start_indexend_index,但保留step,表示对整个序列,按照步长整除的规则取值:

>>> C[::2]
['A', 'C', 'E']

此时,如果我们将步长设为-1,那么就可以很方便的得到一个反序的序列了:

>>> C[::-1]
['F', 'E', 'D', 'C', 'B', 'A']

只要起始值start_index到结束值end_index在step方向中间有值,就有返回值

C = ['A','B','C','D','E','F']
下面这四种表达式是等价的:
>>> C[0:3]
['A', 'B', 'C']
>>> C[0:-3]
['A', 'B', 'C']
>>> C[-6:3]
['A', 'B', 'C']
>>> C[-6:-3]
['A', 'B', 'C']

解释:c[0:-3]等价于c[A:D:1],c[-6:3]等价于c[0:3:1]

切片时,一定要保证start_indexend_index的方向与步长step的方向同向,否则会切出空的序列:

>>> C[0:3:-1]
[]
>>> C[3:0:1]
[]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值