slice在python中截断

当我们想把列表分成新的几段时,就需要用到切片来完成。不过列表中的数据是不固定的,有时候因为过多超出了我们切片的范围,我们的slice函数也不会就此停止,而是产生了截断的概念。下面我们就来分析slice的语法、参数、返回值,然后在其中寻求其截断操作的实例方法。

1.切片语法

[start:end:step]

其中 start, end, step 如果提供,都必须是整数

step可以不提供,默认为1,但不允许为0

从序列的第start位索引起,向右取到第end位元素为止,按end间隔跳步

切片返回的数据类型与当前数据类型保持一致, 切片只是浅拷贝,分配新的内存

2.参数说明:

start -- 起始位置

stop -- 结束位置

step -- 间距

3.返回值

返回一个切片对象。

4.实例

>>>a
[0,1,2,3,4,5,6,7,8,9]
>>>a[-100:5]
[0,1,2,3,4]
>>>a[5:100]
[5,6,7,8,9]
>>>a[-100:100]
[0,1,2,3,4,5,6,7,8,9]
>>>a[100:1000]
[]

当start或stop超出有效索引范围时,切片操作不会抛出异常,而是进行截断。可以这样去理解截断机制:我们假象把索引范围扩充到全体整数,只不过小于或大于的区域对应空元素,在这个扩充后的数轴上进行切片,只需把最终结果中的所有空元素忽略即可。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。