Python中的slice操作

python

Python中slice操作的完整语法:

# i默认是0

# j默认是len(S)

# k的步长,默认为+1

S[i:j:k]

其中i,j,k都可以是负数:

若i < 0或者k<0,等价于len(S) + i,或者len(S) + j;

若k < 0,则表示将[i,k)之间的字符按照步长k,从右往左数,而不是从左往右数

>>>S = 'abcdefg'

>>>S[-3:-1]

'ef'

>>>S[-1:-3:-1] # 将位于S[-1:-3]的字符子串,按照步长1,从右往左数,而不是从左往右数

'gf'

>>>S[4:2:-1]

'ed'

>>>S[2:4:-1] # 输出空字符串

''

>>>S[::-1] # 逆序

'gfedcba'

需要指出的是s[i:j:k]的形式,等价于下面的形式:

>>>S = 'abcdefg'

>>>S[slice(None, None, -1)] # 等价于使用slice对象进行数组元素的访问操作

'gfedcba'

以上是 Python中的slice操作 的全部内容, 来源链接: utcz.com/z/387728.html

回到顶部