对字符串进行切片,有三个参数[start: end:step]:
start:开始位置索引,默认为字符串第一个字符
end:结束位置索引,默认为字符串最后一个字符
step:步长,默认为1
三个参数都可以省略掉,采用默认值。
指定start、end,表示从start开始到end-1(左闭右开)。
索引为正数:从左向右(0是第一个),负数:从右向左(-1是最后一个)。
Example:
a='abcdefg'
print(a[:]) #截取整个字符串,开始位置为0,结束位置为6,根据位置找到的子串:abcdefg,步长为1:abcdefg
print(a[1:-1]) #开始位置为1(b),结束位置为-2(f),根据位置找到的子串:bcdef,步长为1:bcdef
print(a[-5:6:2]) #开始位置为-5(c),结束位置为5(f),根据位置找到的子串:cdef,步长为2:ce
print(a[-1:3]) #开始位置为-1(g),结束位置为2(c),尾索引的值指明的字符串位置小于或等于头索引,此时返回的就是空字符串,c的位置索引小于g,返回空串:''
print(a[4:10]) #开始位置为4(e),结束位置为9(c),尾索引大于总的字符串长度时,默认只截取到字符串末尾:efg
特别要注意:
1、尾索引的值指明的字符串位置小于或等于头索引时,返回空字符串
2、尾索引大于总的字符串长度时,默认只截取到字符串末尾
参考:https://www.jianshu.com/p/093702933003