본문 바로가기

코딩/파이썬과 라즈베리파이

[Raspberry Pi] 라즈베리 파이 + 파이썬 코딩 018. 스위치(버튼) 먼저 누르기 게임

코딩 설명

코드를 실행하면 LED 불이 켜졌다 꺼진다.

코드를 샐행할 때 마다 LED 불은 2초~4초 사이 무작이로 켜진다.

LED 불이 꺼짐과 동시에 스위치를 먼저 누르면 게임에서 이긴다.

참고

2021.05.16 - [학습노트/Raspberry Pi] - [Raspberry Pi] 라즈베리 파이와 함께 하는 파이썬 코딩 015. LED 제어 (켜고 끄기)

2021.05.17 - [학습노트/Raspberry Pi] - [Raspberry Pi] 라즈베리 파이와 함께 하는 파이썬 코딩 016. 스위치(버튼)으로 LED 제어

라즈베리 파이 셋업

GPIO 18로 LED를 제어한다.

GPIO 2로 스위치 1을 제어한다.

GPIO 3으로 스위치 2를 제어한다.

 

파이썬 코드

from os import _exit
from time import sleep
from random import uniform
from gpiozero import Button, LED

player1 = 'Player 1'
player2 = 'Player 2'

g02_btn = Button(2)
g03_btn = Button(3)

g18_led = LED(18)

g18_led.on()
sleep(uniform(2, 4))
g18_led.off()

def pressed(button):
    global player1, player2
    player = player1 if button.pin.number == 2 else player2
    print(player, 'won the game!')
    g02_btn.when_pressed = None
    g03_btn.when_pressed = None

g02_btn.when_pressed = pressed
g03_btn.when_pressed = pressed

코드 실행

Player 2가 이겼다.