当前位置:首页>python>Python的find和index方法

Python的find和index方法

  • 2026-10-06 15:07:18
Python的find和index方法

1. find() 方法

语法

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

参数

  • sub:要搜索的子字符串(必需)。

  • start:可选参数,指定搜索的起始索引,默认为 0。

  • end:可选参数,指定搜索的结束索引(不包含该位置),默认为字符串长度。

返回值

  • 如果找到子串 sub,则返回第一次出现的起始索引(下标)。

  • 如果找不到,则返回 -1。

示例

text = "hello world"print(text.find("world"))   # 输出 6print(text.find("Python"))  # 输出 -1print(text.find("o", 5))    # 从索引5开始找"o",输出 7("world"中的'o')

特点

  • 不会抛出异常,即使子串不存在也只是返回 -1,适合在不确定子串是否存在时使用。

  • 大小写敏感,例如 "World" 和 "world" 是不同的。

  • 只返回第一次出现的位置,若需查找所有出现位置,需结合循环。

2. index() 方法

语法

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

参数

与 find() 完全相同。

返回值

  • 找到子串时,返回第一次出现的起始索引。

  • 找不到时,抛出 ValueError 异常。

text = "hello world"print(text.index("world"))   # 输出 6# print(text.index("Python"))  # 抛出 ValueError: substring not found

特点

  • 当子串一定存在时,使用 index() 可以更简洁地获取位置。

  • 若子串可能不存在,则必须配合 try...except 捕获异常,否则程序会中断。

3. 区别总结

方法
找不到时的行为
适用场景
find()
返回 -1
不确定子串是否存在,需要安全判断
index()
抛出 ValueError
确信子串一定存在,或希望通过异常处理机制

最新文章

随机文章