안녕하세요! 가족과 함께하는 스마트 라이프입니다. 지난 시간까지는 거북이가 정해진 대로 그리는 걸 구경만 했죠? 오늘은 드디어 우리가 거북이의 ‘운전석’에 앉아볼 거예요. 키보드의 화살표를 누르면 거북이가 움직이는 아주 신나는 ‘이벤트(Event)’ 마법을 배워봅시다!

1. ‘이벤트’가 무엇인가요?
코딩에서 ‘이벤트’란 컴퓨터에게 일어나는 특별한 사건을 말해요. 예를 들어 “마우스를 클릭했다!”, “키보드의 A를 눌렀다!” 같은 것들이죠. 게임을 만들 때는 이 이벤트를 잘 감시하고 있다가, 사건이 터졌을 때 딱 맞는 동작(함수)을 실행하는 게 핵심이랍니다.
2. 거북이 자동차 조종법 배우기
거북이를 조종하려면 크게 세 가지 단계가 필요해요.
- 함수 만들기: “앞으로 가기”, “왼쪽으로 돌기” 같은 동작을 미리 만들어둬요.
- 귀 기울이기(Listen): 파이썬에게 “지금부터 키보드 소리에 집중해!”라고 알려줘요.
- 연결하기: 위쪽 화살표를 누르면 “앞으로 가기” 함수를 실행하도록 묶어줘요.
3. 실전 연습: 거북이 운전대 잡기
아래 코드를 실행하고 키보드의 화살표 키를 눌러보세요. 거북이가 여러분의 명령대로 움직일 거예요!
import turtle
# 1. 거북이와 화면 준비
t = turtle.Turtle()
t.shape("turtle")
t.color("green")
t.width(3)
# 2. 움직임 함수 만들기
def go_up():
t.setheading(90) # 위쪽 방향을 봐요
t.forward(20)
def go_down():
t.setheading(270) # 아래쪽 방향을 봐요
t.forward(20)
def go_left():
t.setheading(180) # 왼쪽 방향을 봐요
t.forward(20)
def go_right():
t.setheading(0) # 오른쪽 방향을 봐요
t.forward(20)
# 3. 키보드 마법 연결하기
screen = turtle.Screen()
screen.listen() # 키보드 입력에 귀를 기울여요
screen.onkeypress(go_up, "Up") # 위 화살표와 함수 연결
screen.onkeypress(go_down, "Down") # 아래 화살표와 함수 연결
screen.onkeypress(go_left, "Left") # 왼쪽 화살표와 함수 연결
screen.onkeypress(go_right, "Right") # 오른쪽 화살표와 함수 연결
turtle.done()

4. 더 재미있는 조종 옵션들
단순히 움직이는 것 말고도 이런 기능을 추가해 보세요!
- Space 바를 누르면:
t.clear()를 실행해 그림을 싹 지워요. - R 키를 누르면:
t.color("red")로 잉크 색을 바꿔요. - 숫자 키를 누르면: 거북이의 속도를 더 빠르게 만들어보세요.
5. 가족과 함께하는 ‘거북이 미로 찾기’
종이에 간단한 미로를 그린 뒤 화면에 대보거나, t.penup()과 t.pendown()을 활용해 미로 맵을 그려보세요. 아빠가 미로를 만들고 아이가 거북이를 조종해 탈출하는 게임을 해보는 거예요. “내가 누른 키보드 신호가 전기 신호가 되어 파이썬 함수를 깨우는 거야!”라고 설명해 주면 아이는 코딩의 원리를 훨씬 실감 나게 느끼게 됩니다.
마치며: 나만의 게임이 시작됩니다
오늘 우리는 거북이에게 생명력(조종 능력)을 불어넣었습니다. 사용자의 입력에 반응하는 프로그램을 만들 줄 알게 된 것은 정말 큰 발전이에요! 다음 시간에는 거북이가 화면 밖으로 나가지 못하게 막거나, 목표 지점에 도착하면 축하 메시지를 띄우는 ‘충돌과 목표’ 마법을 배워보겠습니다!



