Python 字符串的索引和切片总结

字符串是字符的有序集合,可以通过其位置来获得具体的元素。索引又称下标,用来表示可迭代对象中的某个元素的位置。在 python 中,字符串中的字符是通过索引来提取的,索引从 0 开始。

python 可以取负值,表示从末尾提取,最后一个为 -1,倒数第二个为 -2,即程序认为可以从结束处反向计数。
在这里插入图片描述

下面是对 python 索引和切片的总结:

以字符串"CHENKK"为例:

1. 索引获取特定偏移的元素

字符串中第一个元素的偏移为 0
字符串中最后一个元素的偏移为-1
str[0] 获取第一个元素
str[-2] 获取倒数第二个元素

2. 分片提取相应部分数据

通常上边界不包括在提取字符串内
如果没有指定值,则分片的边界默认为0和序列的长度
str[1:3 ]获取从偏移为1的字符一直到偏移为3的字符串,不包括偏移为3的字符串 : “HE”
str[1:] 获取从偏移为1的字符一直到字符串的最后一个字符(包括最后一个字符): “HENKK”
str[:3] 获取从偏移为0的字符一直到偏移为3的字符串,不包括偏移为3的字符串 : “CHE”
str[:-1] 获取从偏移为0的字符一直到最后一个字符(不包括最后一个字符串): “CHENK”
str[:] 获取字符串从开始到结尾的所有元素 : “CHENKK”
str[-3:-1] 获取偏移为 -3 到偏移为 -1 的字符,不包括偏移为 -1 的字符 : “NK”
str[-1:-3] 和 str[2:0] 获取的为空字符,系统不提示错误: “”
分片的时候还可以增加一个步长,str[::2] 输出的结果为: “CEK”
分片步长为-1时,表示将字符串倒序输出,str[::-1] 输出的结果为: "KKNEHC

代码如下所示:

str = "CHENKK"
print("str[0]:",str[0])
print("str[-2]:",str[-2])
print("str[1:3 ]:",str[1:3 ])
print("str[1:]:",str[1:])
print("str[:3] :",str[:3] )
print("str[:-1]:",str[:-1])
print("str[-3:-1]:",str[-3:-1])
print("str[-1:-3] :",str[-1:-3] )
print("str[2:0]:",str[2:0] )
print("str[::2]:",str[::2])
#Output
# str[0]: C
# str[-2]: K
# str[1:3 ]: HE
# str[1:]: HENKK
# str[:3] : CHE
# str[:-1]: CHENK
# str[-3:-1]: NK
# str[-1:-3] : 
# str[2:0]: 
# str[::2]: CEK
# str[::-1]: KKNEHC

猜你喜欢

转载自blog.csdn.net/chenjh027/article/details/128007273