Я пытаюсь переключить логическое значение с помощью отдельной функции.Если мои исследования верны, в Python нет указателей (я начинаю изучать их прямо сейчас), поэтому я не уверен, как решить эту проблему.
Для нажатия клавиш я использую библиотеку 'клавиатура' , которая использует обратные вызовы для горячих клавиш.Таким образом, я должен как-то передать переключатель как обратный вызов и мне нужен метод для его переключения.(Если у вас есть другой подход, который может решить эту проблему, это также приветствуется)
Выполнение этого в цикле while, например, вызов выключения, не работает.поскольку в библиотеке клавиатуры нет простого метода проверки нажатия клавиши или ее отпускания, она будет вызываться повторно до тех пор, пока клавиша не будет отпущена.
import keyboard
# Global Variables
running = False
# ------------
# FUNCTIONS
# ------------
def shutdown():
print("Tool shutting down!")
quit()
def toggle(b):
b = not b
def init():
running = False
keyboard.add_hotkey('alt+1', toggle, args=[running])
# ------------
# MAIN PROGRAM
# ------------
init()
while True:
if keyboard.is_pressed('alt+q'):
shutdown()
Переменная должна быть согласованной, по крайней мере, в основнойзапрограммируйте саму себя (это также может быть согласовано в глобальном масштабе, что было моим последним подходом, который не сработал) и будет переключено, когда я использую свою горячую клавишу set.