字符串截取,也叫字符串切片,使用方括号[ ]来截取字符串,在Python中单字符也是作为一个字符串使用。
字符串[开始索引:结束索引:步长]
开始索引:从指定位置开始截取;
结束索引:从指定位置结束截取,但不包含该位置的字符。
步长:不指定时步长为1;
字符串[开始索引:结束索引]。
首先我们了解下字符串的索引,Python中字符串有两种索引方式,如下图:
正索引代表从前往后索引,默认从0开始;负索引代表从后往前索引;索引值也可以叫下标,实例代码:
字符串截取遵循“左闭右开”原则,也叫“包左不包右”:
[开始下标:开始下标)
有两种索引方式就有两种截取方式,实例代码:
因为会涉及到执行效率的问题,所以需要根据情况灵活使用这两种索引方式截取字符串,比如:想快速获取最后一部分字符串,使用负索引是最快的。
>>> str='0123456789'
>>> print(str[0:3])#截取第一位到第三位的字符
012
>>> print(str[:])#截取字符串的全部字符
0123456789
>>> print(str[6:])#截取第七个字符到结尾
6789
>>> print(str[:-3])#截取从头开始到倒数第三个字符之前
0123456
>>> print(str[2])#截取第三个字符
2
>>> print(str[-1])#截取倒数第一个字符
9
>>> print(str[::-1])#创造一个与原字符串顺序相反的字符串
9876543210
>>> print(str[-3:-1])#截取倒数第三位与倒数第一位之前的字符
78
>>> print(str[-3:]) #截取倒数第三位到结尾
789
>>> print(str[:-5:-3])#逆序截取
96