python字符串的截取

str[begin:end:step]

s="123456789"

正序下标:0  1  2  3  4  5  6  7   8

逆序下标:-9 -8 -7 -6 -5 -4 -3 -3 -1

记住下面几个原则就行了

  • 逆序截取时方向是从右向左,顺序截取时方向是从从左向右,从step的正负分辨
  • begin和end表示的都是下标,下标从begin开始,end结束,且前闭后开
  • 不能折返,折返的话输出为空
  • begin和end若省略的话,默认的是最后一个字母后一位的下标

下面直接举例说明

顺序截取

s="0123456789"

print(s[1:4:1])

#结果为 123 前闭后开下标为4的数字4取不到

print(s[1::1])

#从下标是1的数到下标是最后一个数的下标的后一位,从左向右
#结果为 123456789

print(s[::2])

#结果为 02468

print(s[1:-3])

#结果为:123456

逆序截取:

#-*- coding:gb2312 -*-
s="0123456789"
print(s[6:1:-1])

#从下标是6的数开始,到下标是1的数结束,步长是1,逆序截取,从右向左,前闭后开
#结果为 65432

print(s[-5:-3:-1])
#因为从下标是-5的数到下标是-3的数,从右向左,要折返,故输出为空

print(s[-3:-5:-1])

#结果为 76

#下面讲解省略起始或结束的逆序情况

print(s[::-1])
#逆序输出
#结果为 9876543210

print(s[:-3:-1])
#起始位省略,默认为从最后一个字母下一个的下标开始,因为这个下标无
#对应的数字,所以输出9,到下标为-3的数结束,从右向左,前闭后开
#结果为 98
print(s[-3::-1])
#结束位省略,默认为从最后一个字母下一个的下标开始,从右向左,前开后闭
#结果位76543210
print(s[-5::-1])
#结果为 543210

你可能感兴趣的:(python)