1. 반복문이란?
동일한 코드를 여러 번 반복해서 실행하고 싶을 때 사용하는 문법
코드나 변수를 일일이 복붙하는 대신, 컴퓨터가 정해진 조건에 따라 자동으로 반복
print('안녕하세요')
print('안녕하세요')
print('안녕하세요')
#안녕하세요
#안녕하세요
#안녕하세요
for i in range(3):
print('안녕하세요')
#안녕하세요
#안녕하세요
#안녕하세요
2. 파이썬의 반복문 종류
| 반복문 | 설명 | 기본 구조 | 간단 예시 | 결과 |
| for 문 | 정해진 횟수만큼 반복 | for 변수 in 반복가능한_객체: | for i in range(3): print(i) | 0 1 2 |
| while 문 | 조건이 참인 동안 반복 | while 조건: | i=0; while i<3: print(i); i+=1 | 0 1 2 |
3. 반복 제어 키워드
| 키워드 | 설명 | 예시 용도 |
| break | 반복문 즉시 종료 | 찾는 값 발견 시 탈출 |
| continue | 이번 반복만 건너뛰고 계속 진행 | 특정 조건 무시하고 반복 |
추가 설명
- for 문은 리스트, 문자열, range() 와 같은 반복 가능한 객체와 함께 사용
- while문은 조건을 만족하는 동안 계속 실행, 조건이 False면 종료
- 두 반복문은 모두 break, countinue로 흐름 제어 가능
예시:
# -------- 기본 사용 (for 문) --------
# range(5) == 0, 1, 2, 3, 4 하나씩 돌아가면서 출력
for i in range(5):
print(i) # 0 1 2 3 4
# -------- break 사용 (for 문) --------
# range(5) 중에서 i가 3이 되면 반복 중단
for i in range(5):
if i == 3:
break
print(i) # 0 1 2
# -------- continue 사용 (for 문) --------
# range(5) 중에서 i가 2일 때는 출력하지 않고 건너뜀
for i in range(5):
if i == 2:
continue
print(i) # 0 1 3 4
# -------- 기본 사용 (while 문) --------
# i는 0부터 시작해서 5 미만일 동안 1씩 증가하며 출력
i = 0
while i < 5:
print(i) # 0 1 2 3 4
i += 1
# -------- break 사용 (while 문) --------
# i가 3이 되면 반복 종료
i = 0
while i < 5:
if i == 3:
break
print(i) # 0 1 2
i += 1
# -------- continue 사용 (while 문) --------
# i가 3일 때는 출력하지 않고 건너뜀
i = 0
while i < 5:
i += 1
if i == 3:
continue
print(i) # 1 2 4 5
# -------- 무한 루프 예시 1 --------
# 아래 코드는 i += 1이 실행되지 않아 무한 루프에 빠짐 (주의!)
i = 0
while i < 5:
if i == 3:
continue
print(i)
i += 1 # 0 1 2 (이후 출력은 없으나 무한 루프 상태 -> 동작 멈춤 -> 피시터짐)
# -------- 무한 루프 예시 2 --------
i = 0
while i < 5:
if i == 3:
print(i)
continue # 여전히 i += 1이 실행되지 않음
i += 1 # 3 3 3 3 3 .......(무한 반복)
※주의! Warning!
while 에서 continue를 쓸 때 i += 1 위치 조심! 무한 루프에 빠질 수도 있음
4. for문 (정해진 횟수만큼 반복)
# for문 구조
for 변수 in 반복 가능한 객체:
실행할_코드
#예시
fruits = ['사과', '바나나', '포도']
for fruit in fruits:
print(fruit) # 사과 바나나 포도
#예시 range()
for i in range(3):
pirnt(i)
# 0 부터 2까지 하나씩 출력
for i in range(1, 4):
print(i)
# 1 부터 3까지 하나씩 출력
for i in range(1, 10, 2)
print(i)
# 1 부터 9까지 출력하는데 2칸씩 띄어서 넘기기
5. While문 (조건이 참일때 반복)
# While 구조
while 조건 :
실행할 코드
#예제
i = 0
while i < 3:
print(i)
i += 1 #0 1 2
6. 기타 반복문 도우미
| 함수명 | 설명 | 주요 특징 |
| enumerate() | 반복 가능한(iterable) 객체를 인덱스와 함께 반환 | 인덱스와 값을 튜플 (index, value) 형태로 반환 |
| zip() | 여러 iterable 객체를 병렬로 묶어 튜플 생성 | 가장 짧은 iterable 기준으로 병합됨 |
| range() | 숫자 시퀀스 생성 함수 | start, stop, step 지정 가능 |
# enumerate() 예시
# 리스트 요소를 인덱스와 함께 출력
for i, v in enumerate(['a', 'b', 'c']):
print(i, v)
# 출력:
# 0 a # 첫 번째 요소, 인덱스 0
# 1 b # 두 번째 요소, 인덱스 1
# 2 c # 세 번째 요소, 인덱스 2
# zip() 예시
# 두 리스트를 병렬로 묶어 각 쌍을 출력
for a, b in zip([1, 2, 3], ['x', 'y', 'z']):
print(a, b)
# 출력:
# 1 x # 첫 번째 쌍
# 2 y # 두 번째 쌍
# 3 z # 세 번째 쌍
# range() 예시
# 1부터 5까지 2씩 증가하며 출력 (1, 3, 5)
for i in range(1, 6, 2):
print(i)
# 출력:
# 1
# 3
# 5
요약 정리
| 반복문 | 사용 조건 | 반복 횟수 | 대표 키워드 |
| for문 | 리스트, 문자열, range 등 순회 | 정해진 횟수 | for, in |
| while문 | 조건이 True일 동안 반복 | 조건 만족할 때까지 | while |
| 제어문 키워드 | 동작 설명 |
| break | 반복문을 즉시 탈출 |
| continue | 현재 반복만 건너뛰고 다음으로 |
다른 기초를 알고 싶다면? 여기로
'딥러닝 > 프로그래밍 기초' 카테고리의 다른 글
| [프로그래밍 기초]Part 6 파이썬 기타 기초 문법 - 주석 (Comments) (4) | 2025.07.12 |
|---|---|
| [프로그래밍 기초]Part 5. 파이썬 기초 5대 영양소 함수 (Functions) (8) | 2025.07.12 |
| [프로그래밍 기초]Part 3. 파이썬 기초 5대 영양소 조건문 (Conditionals) (2) | 2025.07.11 |
| [프로그래밍 기초]Part 2. 파이썬 기초 5대 영양소 변수 (Variables) (8) | 2025.07.11 |
| [프로그래밍 기초]Part 1. 파이썬 기초 5대 영양소 자료형 (Data Types) (10) | 2025.07.10 |