Почему эта функция получает две позиционные переменные, хотя ей задана только одна?Python

Программы на Python
Ответить
Anonymous
 Почему эта функция получает две позиционные переменные, хотя ей задана только одна?

Сообщение Anonymous »

В недавнем сценарии, который я написал, я использую модуль клавиатуры для горячих клавиш, но решил сохранить все аргументы в массиве, где я буду использовать цикл для их вызова. Когда я попытался использовать любую горячую клавишу, я получил следующую ошибку:

callback = лямбда callback=callback: callback(*args)
TypeError: move() принимает 1 позиционный аргумент, но передано 2

Я не понимаю, как это произошло, поскольку код, который я использовал, выглядел так:
import keyboard
actions = [['left', move, [0, -1]], ['right', move, [0, 1]], ['up', rotate, 'left'], ['down', rotate, 'right']]
for x in range(len(actions)):
keyboard.add_hotkey(actions[x][0], actions[x][1], actions[x][2])


Подробнее здесь: https://stackoverflow.com/questions/798 ... -given-one
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»