<p>我有我的代码,但它似乎没有按预期工作。它需要向用户请求输入来搜索一个文件,一旦找到就不再询问,而是继续询问。但是我想让它再次询问用户是否还没有找到文件。我的代码如下:</p>
<pre><code>import os, sys
from stat import *
from os.path import join
while True:
lookfor=input("\nPlease enter file name and extension for search? \n")
for root, dirs, files in os.walk("C:\\"):
print("Searching", root)
if lookfor in files:
print("Found %s" % join(root, lookfor))
break
else:
print ("File not found, please try again")
</code></pre>
<p>问题是你只打破了内部循环(即<code>for</code>)。你知道吗</p>
<p>您可以将其放入函数中并返回而不是中断,或者引发并捕获异常,如下所示:<a href="https://stackoverflow.com/questions/653509/breaking-out-of-nested-loops">Breaking out of nested loops</a></p>