Python 截取字符串的方法
Python 提供了很多截取字符串的方法,被称为“切片(slicing)”。
模版如下:
string[start: end: step]
其中,
start:起点位置,子字符串的起始索引。该索引处的字符包含在子字符串中。start 为空时则默认为 0。
end:终点位置,子字符串的终止索引。该索引处的字符不包括在子字符串中。end 为空时,或者指定的值超过字符串的长度,则默认它等于字符串的长度。
step:步长,当前字符之后和目标字符之间的距离。step 为空时,则默认值为 1。
模版
string[start:end]:获取从 起点位置 到 终点位置 – 1 的所有字符
string[:end]:获取从 字符串开头 到 终点位置 – 1 的所有字符
string[start:]:获取从 起点位置 到字符串结尾的所有字符
string[start:end:step]:获取从 起点位置 到 终点位置 – 1 的,每个之间距离 步长 的所有字符
示例
获取字符串的前 5 个字符
string = “freeCodeCamp”
print(string[0:5])
输出:
> freeC
注意:print(string[:5]) 和 print(string[0:5]) 返回的结果一样
获取从第 3 个字符开始,长度为 4 的截取字符串
string = “freeCodeCamp”
print(string[2:6])
输出:
> eeCo
请注意,起点或终点位置索引可能为负数。负索引的意思是从字符串的末尾开始而不是从开头开始(即从右到左)开始计数。索引-1 代表字符串的最后一个字符,-2 代表倒数第二个字符,依此类推……
获取字符串的最后一个字符
string = “freeCodeCamp”
print(string[-1])
输出:
> p
获取字符串的末尾 5 个字符
string = “freeCodeCamp”
print(string[-5:])
输出:
> eCamp
获取一个截取字符串,包括除了末尾 4 个和开头第一个字符的所有字符
string = “freeCodeCamp”
print(string[1:-4])
结果:
> reeCode
更多示例
str = “freeCodeCamp”
print str[-5:-2] # prints ‘eCa’
print str[-1:-2] # prints ‘’ (empty string)
每个字符之间间隔一个索引
string = “freeCodeCamp”
print(string[::2])
结果:
> feCdCm