python中rfind函数作用

  • Post category:Python

当我们需要在字符串中定位某个子串最后一次出现的位置时,可以使用Python中的rfind()函数。下面详细讲解该函数的作用。

rfind()函数的语法格式

str.rfind(sub[, start[, end]])

注意:中括号[]表示可选参数。

rfind()函数参数解析

参数 描述
sub 指定检索的字符串,不可省略。
start 搜索的起始位置,如果不指定则默认从字符串的最后一个字符开始搜索,如果指定,要求必须是负数。
end 搜索的结束位置,不包括对应位置的字符,如果不指定则默认到字符串的最开始,如果指定,要求必须是负数。

rfind()函数返回值

该函数返回子串在字符串中最后一次出现的位置,如果没有找到则返回-1。

rfind()函数使用示例

  1. 查找子串最后一次出现的位置

下面的代码示例中,我们将要搜索的字符串为s = 'The quick brown fox jumps over the lazy dog'。我们使用rfind()函数来查找子串’b’最后一次出现的位置。

s = 'The quick brown fox jumps over the lazy dog'
n = s.rfind('b')
print(n)

输出结果为:

15

可以看到,子串'b'最后一次出现的位置在第16个字符,因此返回值为15。

  1. 限制搜索区域

我们可以使用start和end来限制搜索的区域。下面的示例中,我们使用rfind()函数在字符串s = 'hello world!'中查找子串'o'最后一次出现位置,限制在索引2到索引9之间的区域内。

s = 'hello world!'
n = s.rfind('o', 2, 9)
print(n)

输出结果为:

4

可以看到,子串'o'在区间[2,9)内最后一次出现的位置在索引4处,因此返回值为4。