Python String index() 方法
index()
方法返回字符串中子字符串的索引(如果找到)。如果未找到子字符串,它会引发异常。
示例
text = 'Python is fun'
# 查找 'is' 的索引
result = text.index('is')
print(result)
# 输出: 7
index() 语法
它的语法是:
str.index(sub[, start[, end]] )
index() 参数
index()
方法接受三个参数:
- sub - 要在字符串 str 中搜索的子字符串。
- start 和 end(可选)- 子字符串在 str[start:end] 中搜索
index() 返回值
- 如果子字符串存在于字符串中,它返回字符串中找到子字符串的最低索引。
- 如果子字符串不存在于字符串中,它会引发一个 ValueError 异常。
index()
方法类似于 字符串的 find() 方法。
唯一的区别是 find() 方法在未找到子字符串时返回 -1,而 index()
会抛出异常。
示例 1:仅带有子字符串参数的 index()
sentence = 'Python programming is fun.'
result = sentence.index('is fun')
print("子字符串 'is fun':", result)
result = sentence.index('Java')
print("子字符串 'Java':", result)
输出
子字符串 'is fun': 19
Traceback (most recent call last):
File "<string>", line 6, in
result = sentence.index('Java')
ValueError: 子字符串未找到
注意: Python 中的索引从 0 开始,而不是 1。所以出现的位置是 19 而不是 20。
示例 2:带有 start 和 end 参数的 index()
sentence = 'Python programming is fun.'
# 子字符串在 'gramming is fun.' 中搜索
print(sentence.index('ing', 10))
# 子字符串在 'gramming is ' 中搜索
print(sentence.index('g is', 10, -4))
# 子字符串在 'programming' 中搜索
print(sentence.index('fun', 7, 18))
输出
15
17
Traceback (most recent call last):
File "<string>", line 10, in
print(sentence.index('fun', 7, 18))
ValueError: 子字符串未找到