在Python中,find()是一个常用的字符串方法,用于查找子字符串在字符串中首次出现的位置,如果找到了子字符串,它会返回子字符串的起始索引;如果没有找到,它会返回1,find()方法的基本语法如下:
(图片来源网络,侵删)
str.find(sub, start, end)
参数说明:
str:要搜索的字符串。
sub:要查找的子字符串。
start:可选参数,表示搜索的起始位置,默认为0。
end:可选参数,表示搜索的结束位置,默认为字符串的长度。
下面通过一些实例来详细介绍find()方法的用法。
1、查找子字符串在字符串中首次出现的位置
text = "Hello, world!" result = text.find("world") print(result) # 输出:7
在这个例子中,我们查找子字符串"world"在字符串"Hello, world!"中首次出现的位置,因为"world"从索引7开始,所以find()方法返回7。
2、从指定位置开始查找子字符串
text = "Hello, world!" result = text.find("world", 5) print(result) # 输出:7
在这个例子中,我们从索引5开始查找子字符串"world",因为"world"从索引7开始,所以find()方法返回7。
3、查找子字符串在指定范围内的位置
text = "Hello, world!" result = text.find("world", 0, 5) print(result) # 输出:1
在这个例子中,我们在字符串"Hello, world!"的索引0到5之间查找子字符串"world",因为"world"不在这个范围内,所以find()方法返回1。
4、查找子字符串多次出现的位置
text = "Hello, world! world!" result = text.find("world") print(result) # 输出:7
在这个例子中,我们查找子字符串"world"在字符串"Hello, world! world!"中首次出现的位置,因为"world"从索引7开始,所以find()方法返回7,如果我们想要找到下一个"world"的位置,可以继续调用find()方法。
text = "Hello, world! world!" result = text.find("world") + len("world") next_result = text.find("world", result) print(next_result) # 输出:14
在这个例子中,我们首先找到第一个"world"的位置,然后加上"world"的长度,得到第二个"world"的起始位置,接着调用find()方法,从这个位置开始查找第二个"world",因为第二个"world"从索引14开始,所以find()方法返回14,我们可以继续调用find()方法,找到下一个"world"的位置,以此类推。
5、查找不存在的子字符串
text = "Hello, world!" result = text.find("python") print(result) # 输出:1
在这个例子中,我们查找子字符串"python"在字符串"Hello, world!"中的位置,因为"python"不在字符串中,所以find()方法返回1。
评论(0)