아이들이 끝까지 완성하고 싶어 하는 Python 프로젝트
아이를 위한 Python 프로젝트에 대한 실용 가이드. 실제 시작 코드와 처음 10분을 넘어서 관심을 유지할 수 있는 프로젝트를 고르는 팁이 포함되어 있습니다.
대부분의 "아이를 위한 Python 배우기" 자료는 재미있는 것이 일어나기 전에 문법 수업부터 시작합니다. 아이들은 두 번째 수업쯤 되면 보여줄 것이 아무것도 없어서 흥미를 잃습니다. 해결책은 순서를 뒤집는 것입니다. 먼저 작은 프로젝트를 고른 다음, 그 프로젝트를 만드는 데 필요한 Python만 가르칩니다. 9~14세 아이들과 함께 작동하고 실제로 완성되는 프로젝트 아이디어를 여기 모았습니다.
숫자 맞추기 게임은 기초를 지루하지 않게 가르칩니다
이것이 고전적인 시작 프로젝트가 된 이유가 있습니다. 변수, input(), while 루프, if/else를 사용하며, 전체 코드가 15줄 미만입니다:
import random
secret = random.randint(1, 20)
guess = 0
while guess != secret:
guess = int(input("Guess a number between 1 and 20: "))
if guess < secret:
print("Too low!")
elif guess > secret:
print("Too high!")
print("You got it!")
실행되고 나면, 아이가 추측 횟수를 세는 기능이나 힌트 시스템("getting warmer")을 추가하도록 합니다. 이 두 번째 패스에서 진짜 학습이 일어납니다. 튜토리얼에서 타이핑하는 대신 이미 이해하는 코드를 편집하기 때문입니다.
Turtle 그래픽은 루프를 눈에 보이게 만듭니다
Python의 내장 turtle 모듈은 화면에 도형을 그리며, 루프를 추상적인 것이 아닌 유용한 것으로 느끼게 하는 가장 빠른 방법입니다. 별이나 나선을 그리는 다섯 줄짜리 for 루프는 print 문이 만드는 반응보다 훨씬 큽니다.
import turtle
t = turtle.Turtle()
for i in range(36):
t.forward(100)
t.right(170)
turtle.done()
각도를 170에서 144나 90으로 바꾸면 완전히 다른 도형이 나옵니다. 이것은 좋은 "무엇이 될까" 실험을 만듭니다. 새로운 문법이 필요하지 않습니다. 숫자를 바꾸고 결과를 보는 것뿐인데, 이것이 모든 수준에서 프로그래밍이 하는 일입니다.
Mad Libs와 텍스트 어드벤처는 문자열 처리를 자연스럽게 가르칩니다
Mad Libs 생성기는 input()과 f-strings만 필요하지만, 프로그램이 사용자 데이터를 가져와 새로운 것으로 바꿀 수 있다는 개념을 소개합니다:
noun = input("Give me a noun: ")
adjective = input("Give me an adjective: ")
verb = input("Give me a verb: ")
print(f"The {adjective} {noun} decided to {verb} across the kitchen.")
ここから、간단한 텍스트 어드벤처는 자연스러운 다음 단계입니다. 방의 딕셔너리, 각각의 설명과 출구 세트, while 루프로 플레이어 명령을 읽습니다. 이것은 아이들이 워크시트가 말했기 때문이 아니라 프로젝트가 요구하기 때문에 딕셔너리와 함수를 이해하기 시작하는 지점입니다.
퀴즈 게임이나 플래시카드 앱은 리스트와 딕셔너리를 명확하게 만듭니다
질문과 답을 딕셔너리 리스트에 저장하는 퀴즈 게임을 만드는 것은 그 데이터 구조를 배우는 구체적인 이유를 제공합니다:
questions = [
{"q": "What is 7 x 8?", "a": "56"},
{"q": "Capital of France?", "a": "Paris"},
]
score = 0
for item in questions:
answer = input(item["q"] + " ")
if answer.strip().lower() == item["a"].lower():
score += 1
print("Correct!")
else:
print(f"Nope, it was {item['a']}.")
print(f"Score: {score}/{len(questions)}")
아이가 자신이 정말로 관심 있는 주제에 대해 자신만의 질문 세트를 작성하도록 합니다. Pokémon 통계, 축구 선수, 뭐든지요. 코드는 같고, 내용만 바뀌는데, 그 소유감이 대부분의 사람들이 예상하는 것보다 중요합니다.
Pygame은 기초가 정착되면 보상 프로젝트입니다
루프, 조건문, 함수가 일상적으로 느껴지면, Pygame은 그래픽, 움직임, 충돌 감지가 있는 실제 게임을 만드는 자연스러운 다음 단계입니다. 작게 시작합니다. 화살표 키로 조종하는 단일 정사각형이 창 주위를 움직입니다. 완전한 플랫포머로 바로 뛰어갈 충동을 참으세요. 대부분의 아이들(사실 대부분의 어른들)은 첫 프로젝트가 너무 야심 차서 Pygame을 포기합니다. A
AI 도움을 받아 작성했으며, Michal Pilch(CISSP), Korra Studio에서 검토 및 게시했어요.
이것은 Korra Studio 나레지베이스의 한 노트예요. 플랫폼은 모든 주제를 1-to-1 멘토링과 함께 제공해요.
무료로 시작하기arrow_forward