Если выписка со значением совпадает - PullRequest
0 голосов
/ 21 января 2020

У меня проблема с оператором if при проверке соответствия значения.

Цель состоит в том, чтобы проверить разрешение экрана и затем соответственно использовать предварительно определенные координаты (в зависимости от разрешения) для нажмите pyautogui, чтобы скрипт можно было запускать на дисплеях с различным разрешением.

Это код:

import pyautogui
screenWidth, screenHeight = pyautogui.size()
if (screenWidth == 1920, screenHeight == 1080):
    click1 = 780, 150
    click2 = 150, 120
    click3 = 450, 120
if (screenWidth == 1366, screenHeight == 768):
    click1 = 650, 120
    click2 = 120, 100
    click3 = 350, 100
if (screenWidth == 1360, screenHeight == 768):
    click1 = 650, 120
    click2 = 120, 100
    click3 = 350, 100
if (screenWidth == 1280, screenHeight == 800):
    click1 = 630, 110
    click2 = 120, 90
    click3 = 350, 90
if (screenWidth == 1280, screenHeight == 768):
    click1 = 630, 120
    click2 = 120, 90
    click3 = 350, 100

print(screenWidth,screenHeight)
print(click1,click2,click3)

, и это вывод, который не соответствует приведенному выше для 1080p:

1920 1080
(630, 120) (120, 90) (350, 100)

Также появляется сообщение «повторно объявленный click1, определенный выше без использования». Что-то мне не хватает с кодом?

1 Ответ

0 голосов
/ 21 января 2020

решено

Решение состоит в том, чтобы сначала проверить, выполняется ли одно условие (разрешение по оси YY), а затем другое (разрешение по оси X)

import pyautogui
screenWidth, screenHeight = pyautogui.size()
if screenHeight == 1080:
    click1 = 780, 150
    click2 = 150, 120
    click3 = 450, 120
if screenHeight == 768:
    if screenWidth == 1366:
        click1 = 650, 120
        click2 = 120, 100
        click3 = 350, 100
    if screenWidth == 1360:
        click1 = 650, 120
        click2 = 120, 100
        click3 = 350, 100
    if screenWidth == 1280:
        click1 = 630, 120
        click2 = 120, 90
        click3 = 350, 100
    if screenWidth == 1024:
        click1 = 620, 120
        click2 = 120, 90
        click3 = 320, 100
if screenHeight == 800:
    click1 = 630, 110
    click2 = 120, 90
    click3 = 350, 90
...