python中find()函数

s='This is a test'
k=s.find('is')
print(k)
k=s.find('is',k+1)
结果是:
2
5
请问这个find函数是什么运行原理啊看不懂例题

find就是找到子串的位置
它有2个参数,第1个是子串,第2个是起始地址,默认是0(所以这个参数可以不传)
0就是从头开始找,如果你每次都从头找那么每次都只会返回2,也就是this里的is的位置
你传入k+1,那么就是从找到的位置的下一个位置再找