本文小编为大家详细介绍“Python如何截取字符串”,内容详细,步骤清晰,细节处理妥当,希望这篇“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
补充:根据指定字符截取字符串
先获取字符的下标位置;
再通过以上的方法截取;
Python提供index 函数,检测字符串中是否包含子字符串,通常表现为 某些特定字符,特定单词;a.index(b, begin, end),a为需要校验字符串,b为字符串,begin 为开始截取的字符的下标(默认为0),end结束字符下标(默认为字符长度)
示例:
str1 = "Hello.python";str2 = ".";print str1.index(str2);#结果5print str1.index(str2, 2);#结果5print str1.index(str2, 10);#结果报错,没找到子字符串
综合以上所述,按照字符截图示例
str1 = "Hello.python";str2 = ".";print str1.index(str2);#结果5print str1[:str1.index(str2)] #获取 "."之前的字符(不包含点) 结果 Helloprint str1[str1.index(str2):] ; #获取 "."之前的字符(包含点) 结果.python
读到这里,这篇“Python如何截取字符串”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网行业资讯频道。