파이썬으로 만드는 나만의 간단한 게임

“코딩은 재미없다?”

파이썬으로 간단한 게임을 만들다 보면 오히려 더 몰입되고 재미있게 배울 수 있어요!

이번 글에서는 비전공자도 쉽게 만들 수 있는 텍스트 기반 파이썬 게임 예제를 제공합니다.


파이썬으로 게임을 만들 수 있나요?

물론입니다!

파이썬은 pygame, tkinter 같은 그래픽 라이브러리도 있지만,

오늘은 텍스트 기반 게임으로 기초 문법을 연습하고 로직 흐름을 이해해보는 데 집중합니다.

🎮 추천 대상: 파이썬 입문 1~2주차 수준의 학습자


게임 기획: 숫자 맞히기 게임

목표: 컴퓨터가 생성한 1~100 사이의 숫자를 사용자가 맞히기

요소:

  • 난수 생성
  • 사용자 입력
  • 반복문과 조건문
  • 승리 조건 처리

1단계: 난수 생성 및 입력 받기

“`python

import random

answer = random.randint(1, 100)

“`

  • random.randint(1, 100): 1~100 사이의 난수 생성
  • input() 함수로 사용자로부터 숫자 입력 받기

2단계: 조건문 및 힌트 출력

“`python

while True:

guess = int(input(“숫자를 입력하세요 (1~100): “))

if guess < answer:

print(“업! 더 큰 숫자입니다.”)

elif guess > answer:

print(“다운! 더 작은 숫자입니다.”)

else:

print(“정답입니다!”)

break

“`

🧩 : int(input())을 사용할 때는 항상 숫자 입력을 가정해야 합니다. 잘못된 입력 예외 처리는 다음 단계에서!


3단계: 예외 처리 및 시도 횟수 세기

“`python

attempts = 0

while True:

try:

guess = int(input(“숫자를 입력하세요: “))

attempts += 1

if guess < answer:

print(“업!”)

elif guess > answer:

print(“다운!”)

else:

print(f”정답입니다! {attempts}번 만에 맞췄어요.”)

break

except ValueError:

print(“숫자만 입력해 주세요.”)

“`

  • try-except 구문으로 비정상 입력 방어
  • attempts 변수로 시도 횟수 기록

확장 아이디어 💡

| 기능 | 구현 방식 |

|——|———-|

| 최고 기록 저장 | json 또는 txt 파일로 로컬 저장 |

| 시간 제한 | time.time() 활용 |

| UI 버전 업그레이드 | tkinter, pygame 활용 |

🖼️ 게임 UI 이미지 ALT 예시 위치: 숫자 맞히기 게임 예시 화면


게임 코드 전체 정리

“`python

import random

answer = random.randint(1, 100)

attempts = 0

print(“🎮 숫자 맞히기 게임 시작! (1~100 사이)”)

while True:

try:

guess = int(input(“입력: “))

attempts += 1

if guess < answer:

print(“업!”)

elif guess > answer:

print(“다운!”)

else:

print(f”정답입니다! 시도 횟수: {attempts}”)

break

except ValueError:

print(“⚠ 숫자를 입력해 주세요.”)

“`


추가 게임 예제 추천

  • 가위바위보 게임
  • 미니 퀴즈 게임
  • 숫자 야구 게임
  • 타자 연습 게임 (시간 측정)

참고자료


마무리

작은 게임을 만들면서도 조건문, 반복문, 예외 처리, 변수 관리 등 핵심 개념을 자연스럽게 익힐 수 있습니다.

게임을 만든다는 목표는 지루한 문법 공부보다 훨씬 동기 부여가 크기 때문에 비전공자에게도 최고의 연습 방식입니다.

오늘 만든 숫자 맞히기 게임을 살짝만 바꾸면 다양한 미니게임으로 확장할 수 있어요!


🔎 다음 포스팅 주제 추천

→ 18번: 나도 할 수 있는 크롤링: 파이썬으로 시작하기

→ 29번: Django로 웹앱 만들기 입문 강좌


참고자료

  • https://docs.python.org/ko/3/
  • https://replit.com/languages/python3