Gpiozero объединяет события кнопок в коде, управляемом событиямиPython

Программы на Python
Anonymous
Gpiozero объединяет события кнопок в коде, управляемом событиями

Сообщение Anonymous »

Я новичок в бизнесе Python и Raspberry и в настоящее время работаю над своим первым крупным приложением. Мне нравится gpiozero и возможность работать с событиями повсюду.
Я бы хотел, чтобы мой код был «управляемым событиями» и «на самом деле» (возможно) имел только вопрос красоты.
Я хотел бы запросить различные состояния в комбинации. Примеры:
BTN1 + BTN2 => Событие 1
BTN1 + !BTN2 => Событие 2
BTN3 + BTN1 => Событие 3 и т. д.
Есть ли хороший способ объединить здесь сигналы?
Я видел, что вы могли бы что-то сделать вот так:led.source = all_values(btn1, btn2)
Однако мне этого недостаточно; В любом случае мне придется вызывать свои собственные функции.
Моя единственная идея на данный момент будет примерно такой:

Код: Выделить всё

button1 = Button(1)
button2 = Button(2)

def check_btns():
if button1.is_pressed && button2.is_pressed:
btn1_btn2_pressed()

def btn1_btn2_pressed():
print("Both pressed")

button1.when_pressed = check_btns
button2.when_pressed = check_btns
Кто-нибудь знает более элегантное решение для комбинированного запроса событий?
Привет

Подробнее здесь: https://stackoverflow.com/questions/790 ... riven-code

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