目录
python从小白到总裁完整教程目录:https://blog.csdn.net/weixin_67859959/article/details/129328397?spm=1001.2014.3001.5502
❤ 字符串切片
字符串就是一个有序的字符集合,字符串中的字符都会自动被标记一个编号(下标),从0开始标编号,可以通过编号访问字符
语法格式1: 字符串名[编号]
格式说明:获取某个字符串中,第编号号字符,编号可以是负数,从-1开始
1. 没有步长的切片
s[ start : stop ]
start 表示的是字符串要截取的开始下标
stop 表示终止的字符串结束的前一个位置。
s = 'spam'
print(s[0], s[-2])
print(s[1:3], s[1:], s[:-1])
输出:
s a
pa pam spa
如果从开头截取到某个特定的位置可以用 [ : a]来表示
s = 'abcdefghijklmnop'
print(s[:8])
输出:
abcdefgh
如果从某一位开始截取到最后一位可以用[ a : ]来表示
s = 'abcdefghijklmnop'
print(s[8:])
输出:
ijklmnop
在 pyhton中的字符串的索引序号可以是正数也可以是负数,从-1开始算:
s = 'abcdefghijklmnop'
print(s[-1])
print(s[-5])
print(s[-3:])
输出:
p
lnop
2. 有步长的切片方式
另外的一种切片方式就是,首先还是定义一格字符串的变量,然后间隔的取出我们的字符串中的字符。
s [start: stop: stride]
stride表示的是间隔的取出字符串
s = 'abcdefghijklmnop'
print(s[1:10:2])
print(s[::2])
输出:
bdfhj
acegikmo
还可以反转字符串:
s = 'abcdefghijklmnop'
print(s[::-1])
输出:
ponmlkjihgfedcba
间隔逆向的取出字符串:
s = 'abcdefghijklmnop'
print(s[::-2])
输出:
pnljhfdb
反方向的截取部分的字符串:
这个时候我们将步长的那个地方设置为负数,表示从右向左取字符串,步长的绝对值大于1表示间隔的取数。
开始的部分那个截取下标也要从负数计算,或者start必须大于结束的下标,因为它是从右开始的截取的。
s = 'abcdefghijklmnop'
print(s[-1:-8:-1])
print(s[-1:3:-2])
print(s[10:1:-3])
输出:
ponmlkj
pnljhf
khe