我正在尝试在字符串“python program”中打印字符'p'的所有出现。它显示相同的索引值为0,字符串中的'p'而不是0和7。
str = raw_input("enter a string:")
sub = raw_input("enter a sub string:")
for i in str:
if i.lower() == sub.lower():
print i, str.index(i)
输出:
enter a string:python program enter a sub string:p p 0 p 0
答案 0 :(得分:0)
以下是解决方案的建议:
sub = raw_input("enter the sub string you're looking for: ")
string = raw_input("enter the text you're looking in: ")
def get_next(text, sub):
for i in range(len(text)+1):
pos = text.find(sub, i)
if pos == -1 : #if no occurrences, do nothing
break
if i == pos: #would print the sub and the pos only if pointer in correct position
print sub, pos
get_next(string, sub)
你可以使用while循环而不是函数,但是如果你想多次使用代码,我觉得函数会更方便。