切片操作
In [4]: num_str
Out[4]: '0123456789'
In [5]: num_str[1:4]
Out[5]: '123'
1 普通切片
字符串[起点索引:终点索引]
注,终点索引对应的值,不包含在内。如希望包进去,索引值+1、
2 从指定的索引切到终点
IIn [12]: name = “迅雷下载_流浪地球”
In [13]: name2 = “迅雷下载_流浪地球英文版”
In [14]: name2[5:]
Out[14]: ‘流浪地球英文版’
In [15]: name[5:]
Out[15]: ‘流浪地球’
3 步长
字符串[起点索引:终点索引:步长]
In [7]: num_str[1:9:2]
Out[7]: '1357'
In [7]: num_str[1:9:2]
Out[7]: '1357'
In [8]: num_str
Out[8]: '0123456789'
In [9]: num_str[::3]
Out[9]: '0369'
In [10]: num_str[1::4]
Out[10]: '159'
4,倒着切的数法
作为终点:
从右边向左边数数
从-1开始,到-n
不包含-n下标所在的数据
字符串[起点索引:负终点的序号]
负数对应的序号,不包含
5,逆序切
主要通过步长进行方向的控制
首先明确切片的一个过程
In [35]: p[:]
Out[35]: 'python'
In [36]: p[::1]
Out[36]: 'python'
步长不仅仅控制跳几个,而且,步长还控制方向
In [41]: p
Out[41]: 'python'
In [42]: p[起点:终点:步长]
In [42]: p[::-1]
Out[42]: 'nohtyp'
在python字符串中取hty
1,步长控制方向,负值表示从右向左的方向
2,在切片的格式中,起始索引是会包含在取值内容中的
3,终点的索引所对应的值是不包含在取值内容中的
p[3:0:-1]
第一步,实现逆序切
In [46]: n = "0123456789"
In [47]: n[::-1]
Out[47]: '9876543210'
第二步,逆序,确定起点
In [46]: n = "0123456789"
In [47]: n[::-1]
Out[47]: '9876543210'
In [48]: n[6::-1]
Out[48]: '6543210'
In [49]: n[4::-1]
Out[49]: '43210'
In [50]: n[3::-1]
Out[50]: '3210'
小结
起点的下标对应的数据,是会被包含进来的
---> 终点的下标对应的数据,是不包含进来的
n[:5:-1]
1,确定方向
从右向左,步长为-1
2,确定起点
起点是字符串的最未尾
最未尾的索引值是多少,不确定,因为不同字符串,最未尾的索引也是不一样
不确定,我们不填写,让电脑自己去找
因为有了方向,电脑能够自己找到起点
起点,我们不填,让电脑自己去找
3,确定终点
明确一个知识点
注,终点索引对应的值,不包含在内。
如果希望把终点索引对应的数据包进来
索引与方向进行一个加法运算