顺序切片
-
从前往后截取:
print str[0:3] #截取第一位到第三位的字符
print str[:] #截取字符串的全部字符
print str[6:] #截取第七个字符到结尾
print str[:-3] #截取从头开始到倒数第三个字符之前
print str[2] #截取第三个字符 -
从后往前截取:
print str[-1] #截取倒数第一个字符
print str[::-1] #创造一个与原字符串顺序相反的字符串
print str[-3:-1] #截取倒数第三位与倒数第一位之前的字符
print str[-3:] #截取倒数第三位到结尾
注意在[::-1]中有两个冒号,此时意味着最后一个数字代表步长,在python中string的用法与list相近,因此关于此类用法务必予以掌握
逆序切片
格式: str[begin:end:step]
str,字符串.
begin,起始位置.
end,结束位置.
step,间隔.s不等于0.默认为1
注:
区间为左闭右开.
step>0,表示从左往右.
step<0,表示从右往左.

step>0
当step>0时, 截取表达式为:[begin:end :positive step],begin默认为0,end默认为-1,且包含-1,即左闭右闭区间;当step>0时,begin在string中的位置必须在end左边。
print str[1:7:1]
解析:
begin=1 end=7 step=1 step>0,所以从左往右
区间为左闭右开,所以截取到的字符串为’bcdefg’.
因为step为1,所以,最后输出为:’bcdefg’
print str[:11:2]
解析:
begin=0 end=11 step=2 step>0,所以从左往右
区间为左闭右开,所以截取到的字符串为’abcdefghijk’.
因为step为2,所以,最后输出为:’acegik’
step<0
当step<0时,截取表达式为:[begin:end :minus step]。begin默认为-1,end默认为0,且包含0。即左闭右闭区间;当step<0时,begin在string中的位置必须在end右边。
str[:-11:-1]
解析: begin=-1 end=-11 step=-1 step<0,所以从右向左
区间为左闭右开,所以截取到的字符串为’nmlkjihgfe’.
因为step为1,所以,最后输出为:’nmlkjihgfe’
str[-3::-4]
解析: begin=-3 end=0 step=-4 step<0,所以从右向左
区间为左闭右闭,所以截取到的字符串为’lkjihgfedcba’.
因为step为4,所以,最后输出为:’lhd’
自己测试string的截图如图所示: