Проблема в обнаружении нажатий клавиш в python с использованием getch

Я новичок в Python и пытаюсь сделать консольную игру. Для обнаружения нажатий клавиш я использую getch ( https://github.com/joeyespo/py-getch). Но когда я нажимаю, код начинает повторяться.

key = getch()
while (True):
    if (key == 'a'):
        principal.adicionaragua()
        principal.gastaragua()
        principal.aumentardias()
        principal.estado()
        time.sleep(2)
        clear()

Изменить: я использую Windows и Python 2.7

1 ответ

Решение

Вам нужно получить key внутри вашей петли. В противном случае, это всегда будет 'a' так как вы не проверяете внутри своей петли.

while (True):
    key = getch()
    if (key == 'a'):
        principal.adicionaragua()
        principal.gastaragua()
        principal.aumentardias()
        principal.estado()
        time.sleep(2)
        clear()
Другие вопросы по тегам