오늘은 파이썬에서 반복문을 실행하는 두 가지 방법인 for문과 while문의 차이점을 정리해 보았다.
둘 다 반복을 수행하지만 사용 목적과 동작 방식이 다르므로 적절한 상황에서 선택하는 것이 중요하다.
이번 글에서는 for문과 while문의 개념, 차이점, 그리고 각각의 사용 예시를 정리해보았다. 😊
✅ for문과 while문의 기본 개념
📌 for문이란?
- 리스트, 튜플, 문자열, range()와 같은 반복 가능한(iterable) 객체를 순회할 때 사용
- 반복 횟수가 정해져 있는 경우에 적합
for i in range(3):
print("반복 중:", i)
📌 실행 결과:
반복 중: 0
반복 중: 1
반복 중: 2
💡 for문은 특정 범위나 리스트에 있는 요소를 하나씩 가져와 반복하는 구조이다.
💡 range(3)은 0, 1, 2 값을 순서대로 반환하며 반복된다.
📌 while문이란?
- 조건이 참(True)인 동안 계속 반복
- 반복 횟수가 정해져 있지 않은 경우에 적합
count = 0
while count < 3:
print("반복 중:", count)
count += 1
📌 실행 결과:
반복 중: 0
반복 중: 1
반복 중: 2
💡 while문은 조건이 거짓(False)이 될 때까지 계속 반복된다.
💡 만약 조건을 변경하지 않으면 무한 반복(무한 루프)에 빠질 수 있으므로 주의해야 한다.
✅ for문과 while문의 주요 차이점
비교 항목 for문 while문
사용 목적 | 정해진 횟수만큼 반복 | 조건이 만족될 때까지 반복 |
반복 횟수 | 미리 알고 있음 | 모를 수도 있음 |
반복 대상 | 리스트, 튜플, 문자열, range() 등 | 논리적 조건 |
종료 방식 | 요소가 없을 때 자동 종료 | 조건이 False가 될 때까지 반복 |
추천 사용 사례 | 목록 순회, 특정 범위 반복 | 사용자 입력 대기, 특정 조건 만족 시 종료 |
✅ for문과 while문의 사용 예시 비교
📌 1. 리스트 요소 출력하기 (for문)
fruits = ["사과", "바나나", "포도"]
for fruit in fruits:
print(fruit)
📌 실행 결과:
사과
바나나
포도
💡 for문은 리스트 같은 반복 가능한(iterable) 객체에서 요소를 하나씩 꺼내 사용할 때 적합하다.
📌 2. 특정 조건 만족할 때까지 반복하기 (while문)
num = 0
while num < 3:
print(num)
num += 1
📌 실행 결과:
0
1
2
💡 while문은 조건이 충족될 때까지 계속 반복하므로, 종료 조건을 명확히 설정해야 한다.
✅ for문 vs while문 속도 차이 비교
for문과 while문 중 어떤 것이 더 빠를까?
일반적으로 for문이 while문보다 빠르다.
왜냐하면 for문은 반복 횟수를 미리 알고 있기 때문에 최적화되어 동작하기 때문이다.
import time
# for문 속도 테스트
start_time = time.time()
for i in range(1000000):
pass
end_time = time.time()
print("for문 실행 시간:", end_time - start_time)
# while문 속도 테스트
start_time = time.time()
count = 0
while count < 1000000:
count += 1
end_time = time.time()
print("while문 실행 시간:", end_time - start_time)
📌 일반적으로 while문보다 for문이 약간 더 빠르게 실행된다.
📌 그러나 코드의 실행 속도 차이는 크지 않으므로 상황에 맞는 반복문을 선택하는 것이 중요하다.
✅ break와 continue의 활용 차이
📌 break: 반복문 강제 종료
for i in range(5):
if i == 3:
break
print(i)
📌 실행 결과:
0
1
2
💡 break를 사용하면 특정 조건을 만족할 때 반복문을 즉시 종료할 수 있다.
📌 continue: 특정 조건에서 현재 반복을 건너뛰고 다음 반복 실행
for i in range(5):
if i == 3:
continue
print(i)
📌 실행 결과:
0
1
2
4
💡 continue를 사용하면 특정 조건을 만족할 때 현재 반복을 건너뛴 후 다음 반복을 계속 진행한다.
✅ for문과 while문, 언제 사용하면 좋을까?
상황 추천 반복문
반복 횟수를 알고 있을 때 | for문 | 반복 횟수가 정해져 있어 최적화된 방식 |
리스트, 튜플, 문자열 등의 요소를 순회할 때 | for문 | 반복 가능한 객체(iterable)를 다룰 때 유용 |
반복 횟수를 모르는 경우 | while문 | 조건이 만족될 때까지 반복 가능 |
사용자 입력을 받을 때 | while문 | 특정 조건이 충족될 때까지 무한 반복 가능 |
특정 조건에서 반복을 종료해야 할 때 | while문 + break | 원하는 시점에서 즉시 종료 가능 |
🎯 오늘 배운 핵심 내용 정리
✅ for문은 미리 정해진 범위를 반복하는 데 적합하며, while문은 특정 조건을 만족할 때까지 반복하는 데 사용된다.
✅ for문은 리스트, 튜플, 문자열 등의 요소를 순회할 때 유용하다.
✅ while문은 특정 조건이 충족될 때까지 반복하는 프로그램(예: 사용자 입력 대기)에 적합하다.
✅ 일반적으로 for문이 while문보다 실행 속도가 빠르지만, 큰 차이는 없다.
✅ break는 반복문을 즉시 종료하고, continue는 특정 조건을 건너뛰고 다음 반복을 실행한다.
💡 앞으로의 학습 계획
✔ 오늘은 for문과 while문의 차이점과 사용법을 학습했다!
✔ 다음에는 반복문과 리스트, 딕셔너리를 조합한 실전 예제를 연습할 예정이다.
✔ 현실에서 활용할 수 있는 더 다양한 반복문 응용 프로그램을 만들어 보면 좋을 것 같다.
'공부 > 개발' 카테고리의 다른 글
오늘의 파이썬 학습 기록 – 딕셔너리(Dictionary) 활용하기 (0) | 2025.02.22 |
---|---|
Newman을 활용한 API 자동화 테스트 (0) | 2025.02.20 |
오늘의 파이썬 학습 기록 – while 반복문 (0) | 2025.02.18 |
파이썬 리스트(List)와 튜플(Tuple)의 차이점 완벽 정리! (0) | 2025.02.17 |
오늘의 파이썬 학습 기록 – 튜플과 딕셔너리 활용하기 (0) | 2025.02.17 |