列表_切片操作

切片操作

对于列表的切片和字符串类似。切片是python序列及其重要的操作,适用于列表、元组、字符串等。切片格式如下:

切片操作可以让我们快速提取子列表或修改。标准格式:

[起始偏移量start,终止偏移量end,步长step]

注意:当步长省略时顺便可以省略第二个冒号

典型操作(三个最为整数的情况)如下:

操作和说明 示例 结果
[:]提取整个列表 [10,20,30][:] [10, 20, 30]
[start:]从start索引开始到结尾 [10,20,30][1:] [20,30]
[:end]从头开始直到end-1 [10,20,30][:2] [10, 20]
[start:end]从start到end-1() [10,20,30,40][1:3] [20,30]
[start:end:step]从start开始到end-1,步长是step [10,20,30,40,50,60,70][1:6:2] [20, 40, 60]

其他操作(三个量为负数)的情况:

示例 说明 结果
[10, 20, 30, 40, 50, 20, 30, 20, 30][-3:] 倒数三个 [30, 20, 30]
[10, 20, 30, 40, 50, 20, 30, 20, 30][-5:-3] 倒数第三个到倒数第五个(包头不包尾) [50, 20]
[10, 20, 30, 40, 50, 20, 30, 20, 30][::-1] 步长为负,从右到左反向提取  

切片操作时,起始偏移量和终止偏移量不在[0,字符串长度-1]找个范围,也不会报错。起始偏移量 小于 0 则会当作 0,终止偏移量大于 长度-1 会被当成-1,例如

>>> [10,20,30,40][1:30]
[20, 30, 40]

正常输出结果,没有报错。

原文地址:https://www.cnblogs.com/ljwpython/p/14583070.html