Перенос скрипта AHK в Python

Есть скрипт на AHK, который нужно перенести на Python, потому что в AHK* нельзя проводить вычисления прямо в переменных, соответственно нужно сохранить функционал, при этом чтобы скрипт мог изменить переменную с помощью сложения\вычитания

Вот сам скрипт:

F1::
x = 1920
y = 1080
z = 0 
MouseMove, x, y-y+z, 100
Send {LButton down}
MouseMove, x, y, 100
MouseMove, x-x+z, y, 100
MouseMove, x-x+z, y-y+z, 100
MouseMove, x, y-y+z, 100
Send {LButton up}
Loop, 135
{
    x = x - 8
    y = y - 8
    z = z + 8 
    MouseMove, x, y-y+z, 0
    Send {LButton down}
    MouseMove, x, y, 0
    MouseMove, x-x+z, y, 0
    MouseMove, x-x+z, y-y+z, 0
    MouseMove, x, y-y+z, 0
    Send {LButton up}
}

Соответственно в Loop, там где вычисления в переменных AHK воспринимает это как строку а не как число, что нужно исправить, перенеся скрипт в Python.

Примечание: AHK - AutoHotKey


Ответы (1 шт):

Автор решения: 0xdb

Есть модуль ahk. Это модуль обёртка, т.е. AutoHotkey должен быть установлен.

Простейший пример использования:

>>> from ahk import AHK # pip install ahk
>>>
>>> ahk = AHK()
>>>
>>> ahk.mouse_position 
(247, 292)
>>> ahk.mouse_move (100, 100, speed=10, relative=True) # сдвинуть курсор
>>> ahk.mouse_position
(347, 392)
>>> ahk.type ('# hello, world!') # напечатать в активном окне
>>> # hello, world!
>>>
>>> win = ahk.active_window # сдвинуть активное окно
>>> win.position
(208, 433)
>>> win.move (x=300, y=300)
>>> win.position
(300, 300)
→ Ссылка