Search code examples
pythonsikuli

Selecting from multiple variables


I am attempting to find objects on the screen, see if they exist, and if so, select them. Using the Sikuli library to run this little automation.

while True:
    if exist("image/one.png", "image/two.png", "image/three.png"):
        click ("image/one.png", or "image/two.png", or "image/three.png")
    break

I get SyntaxError: mismatched input 'or' expecting RPARENa I've done a quick search but there is nothing I saw relevant to my particular issue.

I've even tried

while True:
        if exist("image/one.png", or "image/two.png", or "image/three.png"):
            click ("image/one.png", or "image/two.png", or "image/three.png")
        break

And that results in the same error.

@Stephan: New code snippet with error.

class gameImages():
    imageFiles = ["one.png", "two.png", "three,png"]

for imageFile in imageFiles:
    if exists(imageFile):
        click(imageFile)

The Error now, :

NameError: name 'imageFiles' is not defined

Solution

  • for imageFile in imageFiles:
      if exists(imageFile):
        click(imageFile)
    

    Your while loop isn't doing anything, and neither is your break statement. This might do what you want, assuming I understand what you want to do.