Python 中的 rindex() 函数有助于返回给定子字符串在原始字符串中出现的最高索引,即最后一次出现的位置。如果未找到子字符串,函数将引发 ValueError 异常。我们还可以指定搜索的起始和结束位置。
str.rindex(sub[, start[, end]] ) #where start & end are integer values
rindex() 函数接受三个参数。此方法与 rfind() 方法类似,区别在于,如果 rfind() 方法中未找到子字符串,它将返回 -1 作为输出。
| 参数 | 描述 | 必需/可选 |
|---|---|---|
| sub | 要搜索的字符串 | 必需 |
| 开始 (start) | 搜索的起始位置。默认为 0 | 可选 |
| end | 搜索的结束位置。默认为字符串末尾 | 可选 |
返回值始终是一个整数。rindex() 方法始终执行区分大小写的搜索。
| 输入 | 返回值 |
|---|---|
| 如果找到子字符串 | 整数(最高索引) |
| 如果未找到子字符串 | ValueError 异常 |
string = "Hii, How are you."
# substring exist
val = string.rfind("o")
print("Substring1 index:", val)
# substring not exist
print(string.rfind("s"))
输出
Substring index: 14 Traceback (most recent call last): File "...", line 8, inprint(string.rfind("s")) ValueError: substring not found
string = "Python programming language"
# calling function
string2 = string.rindex("m",5) # Only starting index is passed
print("Substring index:", string2)
string2 = string.rindex("o",1,7) # Start and End both indexes are passed
print("Substring index:", string2)
输出
Substring index: 14 Substring index: 4