
python如何返回字符串的下标
用户关注问题
怎样在Python中找到字符串中特定字符的位置?
我想知道如何在Python字符串里查找某个字符或子字符串第一次出现的具体位置。
使用字符串的find()方法查找位置
可以使用字符串的find()方法,这个方法会返回指定字符或子字符串第一次出现的下标。如果没有找到,返回-1。例如:
text = 'hello world'
index = text.find('o') # index的值是4
Python中如何获取字符串中某个子串所有出现的索引?
我想得到字符串中某个子串所有出现的位置,不只是第一个,应该怎么做?
利用循环和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]
如何用Python的字符串方法获取字符的索引?
有没有办法直接通过字符串方法得到特定字符或子字符串的索引?
字符串的index()方法可以获取字符下标
Python字符串的index()方法可以返回指定字符或子串的第一个匹配索引,但如果没找到会抛出ValueError异常。用法示例如下:
text = 'example'
position = text.index('a') # 返回2