字符串是字符的有序集合,可以通过其位置来获得具体的元素。
在python中,字符串中的字符是通过索引来提取的,索引从0开始。
python可以取负值,表示从末尾提取,最后一个为-1,倒数第二个为-2,即程序认为可以从结束处反向计数。 如下图所示:
下面是对python索引和切片的总结:
1. 索引获取特定偏移的元素
- 字符串中第一个元素的偏移为0
- 字符串中最后一个元素的偏移为-1
- str[0]获取第一个元素
- str[-2]获取倒数第二个元素
2. 分片提取相应部分数据
- 通常上边界不包括在提取字符串内
- 如果没有指定值,则分片的边界默认为0和序列的长度
- str[1:3]获取从偏移为1的字符一直到偏移为3的字符串,不包括偏移为3的字符串 “tr”
- str[1:] 获取从偏移为1的字符一直到字符串的最后一个字符(包括最后一个字符) “tring”
- str[:3] 获取从偏移为0的字符一直到偏移为3的字符串,不包括偏移为3的字符串 “str”
- str[:-1] 获取从偏移为0的字符一直到最后一个字符(不包括最后一个字符串) “strin”
- str[:] 获取字符串从开始到结尾的所有元素 “string”
- str[-3:-1] 获取偏移为-3到偏移为-1的字符,不包括偏移为-1的字符 “in”
- str[-1:-3]和str[2:0] 获取的为空字符,系统不提示错误 “”
- 分片的时候还可以增加一个步长,str[::2] 输出的结果为 “srn”
转自:http://www.cnblogs.com/roicel/archive/2013/03/19/2970137.html