Python中的rfind()函数是用于在字符串中从右侧开始查找指定字符串的位置,并返回最后一个匹配的位置。如果未找到指定的字符串,则返回-1。
rfind()函数的用法如下所示:
str.rfind(sub[, start[, end]])
其中,str表示要查找的字符串;sub表示要查找的子字符串;start是可选参数,表示开始查找的位置,默认为字符串的结束位置;end也是可选参数,表示结束查找的位置,默认为字符串的开头位置。
下面是两个示例说明:
示例1:
#找到子字符串最后一次出现的位置
str1 = "hello world!"
print(str1.rfind("o")) # 7
print(str1.rfind("l")) # 9
print(str1.rfind("x")) # -1
在这个例子中,我们首先定义一个包含字符串 “hello world!” 的变量 str1。然后使用rfind()函数来查找字符串中子字符串 “o” 和 “l” 最后出现的位置。因为 “o” 和 “l” 存在于字符串中,所以 rfind() 函数分别返回它们的最后出现位置。当我们试图查找不存在于字符串中的子字符串 “x” 时,rfind() 函数返回值为-1。
示例2:
#指定起始位置和结束位置查找子字符串
str2 = "hello world! Hello World!"
print(str2.rfind("o", 0, 10)) # 7
print(str2.rfind("o", 10, 20)) # -1
在这个例子中,我们定义了一个包含字符串 “hello world! Hello World!” 的变量 str2。然后使用rfind()函数来查找字符串中子字符串 “o” 在指定位置的最后出现位置。第一个例子中,我们指定了起始位置为 0,结束位置为 10,因此 rfind() 函数只会在 “hello worl” 的字符串中查找 “o”,所以返回值为 7。第二个例子中,我们指定了起始位置为 10,结束位置为 20,但是子字符串 “o” 不存在于这个字符串区间中,因此返回值为-1。
总结:
rfind()函数可以在字符串中查找指定子字符串最后一次出现的位置。可以通过指定起始位置和结束位置来限制查找区间。如果未找到指定的字符串,则返回值为-1。