如何在不使用find方法和索引方法的情况下在字符串中找到子字符串的索引?我需要循环或使用len方法吗?
def substring_test(x,y):
if y in x:
r = True
else:
r = False
return r
t = input("Enter a string: ")
v = input("Enter a starting substring ")
result = substring_test(sentence, substring)
print(result)
答案 0 :(得分:0)
如果您无法使用find
和index
方法,那么您需要强制它。
从位置0开始
获取字符,直到从位置搜索字符串的长度
如果字符串匹配,则返回位置
否则,增加位置
如果position大于或等于实际字符串与搜索字符串之间的差值,则返回-1
否则请转到2
您可以像这样实现此算法
def substring_test(x, y):
if len(y) > len(x):
return -1
for i in range(len(x) - len(y) + 1):
if x[i:i+len(y)] == y:
return i
return -1