지난 글들에서 변수, 자료형, 연산자까지 봤다면 이제 진짜 “코드다운 코드”를 짤 차례입니다.
바로 조건문(if) 과 반복문(for, while) 입니다.
이 두 가지만 제대로 이해해도,
- 계산기, 성적 계산기
- 자동 문장 생성기
- 간단한 게임/봇
까지 만들 수 있을 정도로 표현력이 확 달라집니다.
이번 글에서는 완전 초보도 따라 올 수 있게 조건문·반복문을 단계별로 정리해 보겠습니다.

1. 조건문(if) – “만약 ~라면”을 코드로 쓰는 법
조건문은 말 그대로,
“만약 어떤 조건이 참이라면, 이 코드를 실행해!”
라고 컴퓨터에게 시키는 문법입니다.
1-1. if 기본 형태
age = 20
if age >= 19:
print("성인입니다.")
- if 뒤에는 조건식
- 끝에는 : 콜론
- 조건이 참일 때 실행할 코드는 들여쓰기(스페이스 4칸)
조건이 거짓이면, 들여쓴 print 부분은 건너뛰고 다음 줄로 넘어갑니다.
1-2. if ~ else – 둘 중 하나 고르기
age = 16
if age >= 19:
print("성인입니다.")
else:
print("미성년자입니다.")
- 조건이 참 → if 블록 실행
- 조건이 거짓 → else 블록 실행
딱 하나만 실행된다는 점이 중요합니다.
1-3. if ~ elif ~ else – 여러 갈래 조건
점수에 따라 등급을 나누는 대표적인 예시입니다.
score = 82
if score >= 90:
print("A")
elif score >= 80:
print("B")
elif score >= 70:
print("C")
else:
print("D")
위 코드는 위에서부터 조건을 차례대로 검사하면서,
처음으로 참이 되는 조건에서 멈추고 해당 블록만 실행합니다.
1-4. 자주 쓰는 비교 연산자 & 논리 연산자
- == : 같다
- != : 같지 않다
- > / < / >= / <=
논리 연산자:
- and : 둘 다 참일 때만 참
- or : 둘 중 하나만 참이어도 참
- not : 참/거짓 반전
age = 25
has_id = True
if age >= 19 and has_id:
print("입장 가능")

2. 반복문 – 같은 일을 여러 번 시키는 법
반복문은 말 그대로,
“이 코드를 n번 반복해!”
“조건이 참인 동안 계속 반복해!”
라고 시키는 문법입니다.
파이썬에서는 대표적으로 for문, while문 두 가지를 씁니다.
2-1. for문 – “리스트를 하나씩 꺼내며 반복”
2-1-1. 기본 형태
for i in range(5):
print(i)
- range(5) 는 0, 1, 2, 3, 4 를 차례대로 만들어 주는 함수
- i 는 매 반복마다 그 중 하나씩을 받는 변수
결과:
0
1
2
3
4
2-1-2. 리스트 돌기
fruits = ["사과", "바나나", "포도"]
for f in fruits:
print(f)
이렇게 쓰면 f 에 리스트 안에 있는 값들이 하나씩 들어가며 반복됩니다.
2-1-3. 합계 구하기 예제
1부터 10까지 더하기:
total = 0
for i in range(1, 11): # 1 ~ 10
total += i
print("합계:", total)
2-2. while문 – “조건이 참인 동안 계속 반복”
for문이 개수를 기준으로 반복한다면,
while문은 조건이 참인지를 기준으로 반복합니다.
count = 0
while count < 5:
print(count)
count += 1
- count < 5 가 참인 동안 계속 반복
- 반복 속에서 count 를 증가시키지 않으면 무한 루프가 되니 주의해야 합니다.
2-2-1. 간단한 메뉴 예제
while True:
menu = input("1. 시작 2. 종료 : ")
if menu == "1":
print("프로그램을 시작합니다.")
elif menu == "2":
print("프로그램을 종료합니다.")
break
else:
print("메뉴를 다시 선택하세요.")
- while True: 로 무한 반복
- break 를 만나면 반복문을 즉시 종료

3. 반복문 제어: break / continue / 중첩 반복
3-1. break – 반복문 강제 종료
for i in range(1, 11):
if i == 5:
break
print(i)
출력:
1
2
3
4
i 가 5가 되는 순간 break 로 반복문이 끝납니다.
3-2. continue – 이번 회차만 건너뛰기
for i in range(1, 6):
if i == 3:
continue
print(i)
출력:
1
2
4
5
i == 3일 때는 print를 건너뛰고
다음 반복으로 넘어갑니다.
3-3. 중첩 반복문 – 구구단 예제
for i in range(2, 10): # 2단 ~ 9단
for j in range(1, 10): # 1 ~ 9
print(f"{i} x {j} = {i*j}")
print("-" * 20)
- 바깥 for문: 단
- 안쪽 for문: 각 단의 곱셈
중첩 반복은
표, 격자, 2차원 좌표 처리할 때 자주 쓰입니다.
4. 조건문 + 반복문 합체: 실전형 미니 프로젝트
예제: 특정 조건을 만족하는 숫자만 골라내기
“1부터 100까지 숫자 중에서
짝수이면서 3의 배수인 숫자만 출력” 해볼까요?
for i in range(1, 101):
if i % 2 == 0 and i % 3 == 0:
print(i)
- i % 2 == 0 → 짝수
- i % 3 == 0 → 3의 배수
- and 로 두 조건을 모두 만족해야 출력
이런 형태는 나중에
- 특정 키워드가 들어간 데이터만 골라내기
- 조건에 맞는 회원만 필터링하기
등 더 실제 프로젝트와 가까운 작업으로 이어집니다.

5. 오늘 배운 내용 정리 & 연습 아이디어
오늘 핵심 요약
- 조건문(if)
- if / elif / else 구조
- 비교 연산자, 논리 연산자(and, or, not)
- 반복문(for, while)
- for i in range() : 개수 기반 반복
- while 조건: : 조건 기반 반복
- 제어 키워드
- break : 반복문 완전 종료
- continue : 이번 회차만 건너뛰기
- 조건문 + 반복문을 합치면
- 필터링, 검색, 메뉴 시스템, 구구단 등
실전 느낌 나는 코드를 만들 수 있다.
- 필터링, 검색, 메뉴 시스템, 구구단 등
직접 해보면 좋은 연습 문제
- 성적 프로그램
- 점수를 입력받아서
- 90 이상 A, 80 이상 B … 출력하기
- 0 미만 or 100 초과면 “잘못된 점수” 출력
- 합계 & 평균 구하기
- 숫자 5개를 입력받고,
- 합계와 평균을 출력하는 프로그램 만들기
- 숫자 맞추기 게임
- 1~20 사이 랜덤 숫자를 하나 정해두고
- 사용자가 맞출 때까지 계속 입력받기
- 더 크다/더 작다 힌트 주기 (while + if 활용)
[사진 위치 5]
추천 이미지: 체크리스트가 적힌 노트 위에
if, for, while 이라고 적힌 스티커가 붙어 있는 일러스트
(“오늘 배운 문법 체크 완료” 느낌)
6. 다음 편 예고 – 리스트·딕셔너리까지 한 번에 정리
조건문과 반복문까지 이해했다면,
이제 데이터를 잘 쌓아두고 꺼내 쓰는 **“자료 구조”**를 볼 차례입니다.
다음 4편에서는
- 리스트(list)
- 튜플(tuple)
- 딕셔너리(dict)
를 중심으로,
실제 프로젝트에서 어떤 자료 구조를 언제 써야 하는지까지 이어가 볼게요.
티스토리 알고리즘/검색을 위한 추천 태그
- #파이썬기초
- #코딩입문
- #조건문
- #반복문
- #파이썬if문
- #파이썬for문
- #파이썬while문
- #코딩독학
- #프로그래밍기초
- #코딩에대한모든것
원하면, 위 [사진 위치]에 맞춰
이번 글 전용 표지 이미지랑 본문용 일러스트도 따로 만들어 줄게.
'코딩과 AI와 자동화 > 코딩' 카테고리의 다른 글
| 파이썬 미니 프로젝트: 리스트/딕셔너리 + 함수로 “할 일(To-Do) 관리 프로그램” 완성하기 (파이썬 기초 6편) (0) | 2026.01.14 |
|---|---|
| 파이썬 함수(Function) 사용법: def/return/매개변수 한 번에 정리 (파이썬 기초 5편) (0) | 2026.01.05 |
| 4편. 데이터 구조(리스트, 딕셔너리) 이해하기 – 파이썬 기초 코딩 필수 개념 (0) | 2025.12.20 |
| 2편. 파이썬 기본 문법 제대로 이해하기 (0) | 2025.12.06 |
| 코딩에 대한 모든 것 (0) | 2025.11.18 |