一旦找到 os.walk() 中我想要的文件,我该如何打破这个循环?
How can I break this loop once the file I want in os.walk() is found?
我正在使用 os.walk() 循环和 if 语句来查找文件的路径。它可以工作,但是在找到并打印路径之后,循环不会中断几秒钟。我想在打印出我想要的路径后打破循环。递归的新手,所以这是我不足的地方。
代码:
for root, dirs, files in os.walk('C:\'):
for file in files:
if file == 'vipkidt.exe':
path = str(os.path.join(root, file))
print(path)
Output>> C:\Program Files (x86)\VIPKIDT\vipkidt.exe
# 3-4 seconds passes..
Process finished with exit code 0
想要的路径打印得相当快,3-4 秒过去,然后循环中断。我想缩短这 3-4 秒。我尝试在每个内部和外部 for 循环中添加一个 break
,但是没有成功。我在这里引用了这些帖子,但仍然没有点击:, ref2
使用break
跳出for file in files
循环,清空dirs
跳出os.walk
循环
for root, dirs, files in os.walk('C:\'):
for file in files:
if file == 'vipkidt.exe':
path = str(os.path.join(root, file))
print(path)
dirs[:] = []
break
我正在使用 os.walk() 循环和 if 语句来查找文件的路径。它可以工作,但是在找到并打印路径之后,循环不会中断几秒钟。我想在打印出我想要的路径后打破循环。递归的新手,所以这是我不足的地方。
代码:
for root, dirs, files in os.walk('C:\'):
for file in files:
if file == 'vipkidt.exe':
path = str(os.path.join(root, file))
print(path)
Output>> C:\Program Files (x86)\VIPKIDT\vipkidt.exe
# 3-4 seconds passes..
Process finished with exit code 0
想要的路径打印得相当快,3-4 秒过去,然后循环中断。我想缩短这 3-4 秒。我尝试在每个内部和外部 for 循环中添加一个 break
,但是没有成功。我在这里引用了这些帖子,但仍然没有点击:
使用break
跳出for file in files
循环,清空dirs
跳出os.walk
循环
for root, dirs, files in os.walk('C:\'):
for file in files:
if file == 'vipkidt.exe':
path = str(os.path.join(root, file))
print(path)
dirs[:] = []
break