on_press_key() missing 1 required positional argument: 'callback'

while True:
    if keyboard.on_press_key('a'):
        time.sleep(1)
        print("test")

выдает:

File "c:\Users\PC-TV\Desktop\Minecraft Bot\main.py", line 25, in <module>
    if keyboard.on_press_key('a'):
TypeError: on_press_key() missing 1 required positional argument: 'callback'

в чем проблема?


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

Автор решения: LeonidPetrovich

on_press_key ожидает от Вас получить 3 аргумента key, callback, suppress. Обязательными являются 2 key и callback, а третий по умолчанию равен False. В Вашем случае указан только один 1 аргумент. Ваш код можно написать следующим образом и он должен работать:

import keyboard

def print_test():
    print('test')
while True:
   keyboard.on_press_key('f', print_test)

Пробуйте

→ Ссылка
Автор решения: Андрей Крузлик
import keyboard


def test():
    print('test')
    
keyboard.on_press_key('a', test())
→ Ссылка