python如何返回字符串的下标

python如何返回字符串的下标

作者:Joshua Lee发布时间:2026-01-14阅读时长:0 分钟阅读次数:6

用户关注问题

Q
怎样在Python中找到字符串中特定字符的位置?

我想知道如何在Python字符串里查找某个字符或子字符串第一次出现的具体位置。

A

使用字符串的find()方法查找位置

可以使用字符串的find()方法,这个方法会返回指定字符或子字符串第一次出现的下标。如果没有找到,返回-1。例如:

text = 'hello world'
index = text.find('o') # index的值是4

Q
Python中如何获取字符串中某个子串所有出现的索引?

我想得到字符串中某个子串所有出现的位置,不只是第一个,应该怎么做?

A

利用循环和find()方法循环查找所有下标

可以通过循环调用find()方法,每次从上一次找到的位置之后开始查找,直到找不到为止。示例代码如下:

text = 'banana'
sub = 'an'
start = 0
indices = []
while True:
idx = text.find(sub, start)
if idx == -1:
break
indices.append(idx)
start = idx + 1
print(indices) # 输出[1, 3]

Q
如何用Python的字符串方法获取字符的索引?

有没有办法直接通过字符串方法得到特定字符或子字符串的索引?

A

字符串的index()方法可以获取字符下标

Python字符串的index()方法可以返回指定字符或子串的第一个匹配索引,但如果没找到会抛出ValueError异常。用法示例如下:

text = 'example'
position = text.index('a') # 返回2