Dav*_*ave 0 python while-loop sikuli
我正在使用Sikuli OCR测试库.在我的Python脚本中,我正在寻找两个可能出现的图像之一.当其中一个出现时,如果选择该对象.
但是,我想让脚本结束.它没有.我试过了quit(),exit()但那不是这样做的.除了while循环和完成脚本之外,它工作正常.
while True:
if exists ("lose.png"):
click ("lose.png")
print ("***** YOU LOSE! *****")
if exists ("win.png"):
click ("win.png")
print ("***** YOU WIN! *****")
StopIteration
quit()
Run Code Online (Sandbox Code Playgroud)
您可以退出任何循环break:
while True:
if exists ("lose.png"):
click ("lose.png")
print ("***** YOU LOSE! *****")
break
if exists ("win.png"):
click ("win.png")
print ("***** YOU WIN! *****")
break
Run Code Online (Sandbox Code Playgroud)
如果两个if语句都没有评估True,则循环继续.
StopIteration是一个例外,通常由迭代器引发,表示它们已完成.大多数使用它的Python代码只需捕获该异常,但如果要提高它,请使用raise StopIteration()语句.这样做没有意义; 您的脚本未作为迭代器运行,并且该StopIteration异常将不具有所需的效果.