Слушатель клавиатуры от pynput - PullRequest
0 голосов
/ 06 ноября 2018

Я пытаюсь импортировать слушатель клавиатуры в мой класс, но продолжаю получать

NameError: name 'on_press' is not defined

Вот мой код:

from pynput import keyboard
class game_code:

    with keyboard.Listener(on_press=on_press) as listener:
        listener.join()

    def check_key_press(self,key):
       try: k = key.char
       except: k = key.name

       if k in ['up', 'down', 'left', 'right']:
          self.key = keys.append(k)
          return True

        else:
          return False

Также не уверен на 100%, как работают операторы.

1 Ответ

0 голосов
/ 06 ноября 2018

Работаю, используя формат их документации онлайн:

https://pythonhosted.org/pynput/keyboard.html

from pynput.keyboard import Key, Listener

def on_press(key):
    #print('{0} pressed'.format(
        #key))
    check_key(key)

def on_release(key):
    #print('{0} release'.format(
       # key))
    if key == Key.esc:
        # Stop listener
        return False

def check_key(key):
    if key in [Key.up, Key.down, Key.left, Key.right]: 
        print('YES')

# Collect events until released
with Listener(
        on_press=on_press,
        on_release=on_release) as listener:
    listener.join()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...