在 while 循环中使用 Python 的 Find() 到 return 字符串中单词的索引

Using Python's Find() in a while loop to return the index of words in a string

我正在处理的一个问题涉及使用 while 循环遍历一个字符串,使用 Find() 函数 return 该字符串中出现的特定单词的索引。对于此示例,它在包含整个 The Time Machine 的字符串变量中查找名称 'Weena'。我被要求专门使用 while 循环和 Find() 函数,尽管我已经使用枚举器解决了这个问题。

for count, word in enumerate(time_machine_text.split()):
    if 'Weena' in word:
        print(count)

我习惯了foreach循环,因为我在学习C#时非常依赖它们,所以我看到的每一个循环问题我都默认为foreach循环。任何满足使用 while 循环和 Find() 函数的任务要求的建议将不胜感激。

我会单独初始化 count 变量并使用 while 循环遍历 time_machine_text.split()。例如:

count = 0
words = time_machine_text.split()
while count < len(words):
    word = words[count]
    if "weena" in word:
        print(count)
    count += 1

编辑:这是使用 find() 函数的版本

count = 0
words = time_machine_text.split()
while count < len(words):
    word = words[count]
    if word.find("weena") != -1:
        print(count)
    count += 1