首页技术文章正文

什么是切片?切片的语法格式是怎样的?

更新时间:2021-08-10 来源:黑马程序员 浏览量:

IT培训班


切片是指对序列截取其中一部分的操作。切片的语法格式如下:

[起始索引:结束索引:步长]
切片截取的范围属于左闭右开,即从起始索引开始,到结束索引前一位结束(不包含结束位本身)。我们把索引比作一把“刀”,在开始索引和结束索引的位置“切下”,“切下”的元素就是这个范围内的元素。步长的取值可以是正数和负数,默认值为1。

根据步长的取值,可以分为如下两种情况:

(1)步长大于0

按照从左到右的顺序,每隔“步长-1”(索引间的差值仍为步长值)个字符进行一次截取。这时,“起始”指向的位置应该在“结束”指向的位置的左边,否则返回值为空。

示例如下:

>>> string = 'python'
>>> string[0:6]   # 没指定步长,默认为1
'python'
>>> string[2:5:2] # 指定步长为2
'to'

在上述示例中,如果没有指定步长默认为1。以string[2:5:2]为例,通过示意图来分析切片的原理,如图1所示。

切片

图1 切片示意图(步长大于0)

(2)步长小于0

按照从右到左的顺序,每隔“步长-1”(索引间的差值仍为步长值)个字符进行一次截取。这时,“起始”指向的位置应该在“结束”指向的位置的右边,否则返回值为空。

示例如下:

>>> string = 'python'
>>> string[3:0:-1]

'hty'
>>> string[0:3:-2]
''

注意,起始位置的索引必须大于结束位置的索引,否则返回空字符串。以string[3:0:-1]为例,通过示意图来分析切片的原理,如图2所示。

切片

图2 切片示意图(步长小于0)








猜你喜欢:

DRF框架:序列化器字段类型和选项参数

Python怎样向文件中写入数据和字符串序列?

DRF框架:序列化器字段类型和选项参数

python有哪些基础操作?怎样添加、删除、修改列表元素?

黑马程序员Python大数据开发培训课程

分享到:
在线咨询 我要报名
和我们在线交谈!