728x90

이 강의는 파이썬 강의 47강입니다.
이전 강의에서는 리팩토링을 통해 코드를 더 좋게 만드는 방법을 배웠습니다.
이번 강의에서는 지금까지 배운 모든 개념을 한 구조로 묶는
메뉴형 콘솔 프로그램 구조를 만듭니다.
이 구조는
- 자동화 프로그램
- 관리 프로그램
- 게임
의 기본 뼈대가 됩니다.
메뉴형 프로그램이란 무엇인가
메뉴형 콘솔 프로그램은
사용자가 선택을 반복하면서
프로그램이 계속 실행되는 구조입니다.
예를 들면:
1. 목록 보기
2. 추가하기
3. 삭제하기
0. 종료
이 구조 하나로
수많은 프로그램을 만들 수 있습니다.
1️⃣ 메뉴형 프로그램의 핵심 구조
메뉴형 프로그램의 핵심은 딱 3가지입니다.
- 메뉴 출력
- 사용자 입력
- 선택에 따른 처리
그리고 이 전체를
while 반복문으로 감쌉니다.
2️⃣ 가장 단순한 메뉴 구조
먼저 전체 흐름만 봅니다.
while True:
print("1. 인사하기")
print("0. 종료")
choice = input("선택: ")
if choice == "1":
print("안녕하세요")
elif choice == "0":
break
이게 메뉴형 프로그램의 최소 구조입니다.
3️⃣ 메뉴 출력은 함수로 분리하기
메뉴 출력은
함수로 분리하는 게 좋습니다.
def show_menu():
print("1. 인사하기")
print("0. 종료")
while True:
show_menu()
choice = input("선택: ")
코드 읽기가 훨씬 쉬워집니다.
4️⃣ 선택 처리도 함수로 분리하기
선택에 따른 행동도
함수로 나눕니다.
def say_hello():
print("안녕하세요")
if choice == "1":
say_hello()
메뉴 = 흐름 / 함수 = 기능
이 분리가 핵심입니다.
메뉴 = 흐름 / 함수 = 기능
이 분리가 핵심입니다.
def show_menu():
print("1. 인사하기")
print("0. 종료")
def say_hello():
print("안녕하세요")
while True:
show_menu()
choice = input("선택: ")
if choice == "1":
say_hello()
elif choice == "0":
print("프로그램 종료")
break
else:
print("잘못된 선택입니다.")
이 구조는
앞으로 계속 재사용됩니다.
6️⃣ 메뉴형 구조의 장점
이 구조의 장점은 명확합니다.
- 기능 추가가 쉽다
- 흐름이 한눈에 보인다
- 코드가 잘 안 꼬인다
새 기능을 추가할 때는
함수 하나 + 메뉴 한 줄이면 끝입니다.
7️⃣ 상태와 메뉴 구조
메뉴형 프로그램은
상태(state)와 아주 잘 어울립니다.
count = 0
def increase():
global count
count += 1
상태를 바꾸는 기능들을
메뉴로 묶는 구조입니다.
8️⃣ 실습 예제
아래 조건을 만족하는
메뉴형 프로그램을 만들어보세요.
- 1번: 숫자 1 증가
- 2번: 현재 숫자 출력
- 0번: 종료
더보기
힌트: while, if/elif, 함수 분리
이번 강의 핵심 정리
- 메뉴형 프로그램은 while 기반 구조다
- 메뉴 출력과 기능은 분리한다
- 선택 → 처리 흐름이 핵심이다
- 이 구조는 거의 모든 프로그램의 기본이다
728x90
'⚙️ Python > 💻 Python 기초' 카테고리의 다른 글
| [Python] 49강 코드가 길어질 때 정리하는 법 (유지보수 감각 만들기) (0) | 2026.01.14 |
|---|---|
| [Python] 48강 데이터 저장형 콘솔 프로그램 구조 만들기 (0) | 2026.01.14 |
| [Python] 46강 기존 코드 리팩토링하기 (고치지 말고 개선하기) (0) | 2026.01.13 |
| [Python] 45강 데이터 구조를 다시 설계하는 방법 (0) | 2026.01.12 |
| [Python] 44강 상태(state) 개념 이해하기 (0) | 2026.01.12 |