Python中如何使用索引函数(index)?
发布时间:2023-05-26 13:43:38
Python中的索引函数(index)可以用于在一个字符串中查找子字符串的位置。它返回子字符串在字符串中 次出现时的索引。如果子字符串不存在,则会引发ValueError异常。
下面是使用索引函数的语法:
str.index(sub[, start[, end]])
其中,
- str是要搜索的字符串。
- sub是要查找的子字符串。
- start是可选的开始索引。如果不指定,则从字符串开头开始搜索。
- end是可选的结束索引。如果不指定,则从字符串结尾开始搜索。
示例:
string = "hello world"
print(string.index('o')) # 输出 4
print(string.index('wo')) # 输出 6
print(string.index('x')) # 引发 ValueError 异常
在上面的示例中, 个调用index函数查找字符串中 个出现的字符o的索引位置。该函数返回4,因为字符o在字符串中的第5个位置。第二个调用查找wo子字符串的位置。该函数返回6,因为wo子字符串在字符串中的第7和第8个位置。第三个调用尝试查找x子字符串的位置,但由于该子字符串不存在于字符串中,因此会引发ValueError异常。
需要注意的是,如果要查找的子字符串出现多次,则index函数将返回 次出现的索引位置。如果要查找所有出现的索引位置,则需要使用字符串的find函数并使用一个循环。
示例:
string = "hello world"
sub = 'o'
start = 0
while True:
index = string.find(sub, start)
if index == -1:
break
print(index)
start = index + 1
在上面的示例中,我们使用一个循环查找o子字符串的所有出现位置。该循环首先使用字符串的find函数来查找o的 个索引位置。如果找到了,它会输出该位置并将开始索引设置为该位置加1,以便在下一次查找中跳过该位置。如果未找到,则该循环终止。
