Как передать аргументы self-функции python?
Функция def func(self, event): вызывается в коде строкой keyboard.hook(self.func)
Помимо self и event, в функцию нужно предать еще один аргумент в виде числа.
То есть что-то такое:
#функция
def func(self, event, my_varible):
if my_varible == 1:
#действие 1
else:
#действие 2
#вызов
keyboard.hook(self.func(1)) #как передать значение?
Как это можно сделать?
Ответы (1 шт):
Автор решения: CrazyElf
→ Ссылка
keyboard.hook(self.func(1))
^^^ - вызов функции, вместо передачи её аргументом
Если вы указываете скобки с аргументом, вы вызываете функцию в этот самый момент уже, а не передаёте ссылку на функцию, что требуется в этом случае, так точно не пойдёт. Но можно использовать, например, partial. Примерно так:
from functools import partial
keyboard.hook(partial(self.func, my_variable=1))