当我们想把列表分成新的几段时,就需要用到切片来完成。不过列表中的数据是不固定的,有时候因为过多超出了我们切片的范围,我们的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超出有效索引范围时,切片操作不会抛出异常,而是进行截断。可以这样去理解截断机制:我们假象把索引范围扩充到全体整数,只不过小于或大于的区域对应空元素,在这个扩充后的数轴上进行切片,只需把最终结果中的所有空元素忽略即可。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)