重试循环直到满足条件

Retry loop until condition met

我正在尝试将鼠标导航到对象上,但我想创建一个条件来检查 "surowiec" 是否仍在屏幕上,如果不是,我想跳过循环并转到另一个循环。完成第二个后回​​到第一个并重复。

[错误] 脚本 [ 文档 ] 因第 12 行错误而停止 [错误] FindFailed(在 R[0,0 1920x1080]@S(0) 中找不到 surowiec.png)

w_lewo = Location(345,400)
w_prawo = Location(1570,400)
w_gore = Location(345,400)
w_dol = Location(345,400)

surowiec = "surowiec.png"

while surowiec:
    if surowiec == surowiec:
        exists("surowiec.png") 
        if exists != None:
            click("surowiec.png")    
            wait(3)
            exists("surowiec.png") 
        elif exists == None:
            surowiec = None    
            click(w_prawo)
            wait(8)
            surowiec = surowiec

举个小例子怎么样:

while True:
    if exists(surowiec):
        print('A')
        click(surowiec)
    else: 
        print('B')
    break

True 的 while 循环将始终 运行,直到遇到 break 退出循环。还要查看 Sikuli 中可用的函数,有时很难找到它们,但它们是可用的。所以这里有一些不错的:

Link: Link 1 and Pushing keys and Regions

我发现自己非常有用的命令是 is existsif not exists,以及允许在屏幕上定位图像的 find。如果图像停留在同一位置,则您无需一遍又一遍地查找图像。 image1 = find(surowiec)