파이썬은 프로그래밍 언어로서 매우 유용하며, 그 중에서도 반복문은 특정 작업을 효율적으로 수행하는 데 중요한 역할을 합니다. 본 글에서는 파이썬의 두 가지 주요 반복문인 while
과 for
에 대해 자세히 살펴보며, 각각의 활용 사례를 통해 실질적인 이해를 돕고자 합니다.

파이썬 반복문의 개요
파이썬에서 반복문은 특정 조건이 만족될 때까지 또는 정해진 횟수만큼 반복하여 코드를 실행합니다. 가능한 반복문의 종류로는 while
문과 for
문이 있습니다. 이들은 각각 다른 방식으로 동작하며, 상황에 따라 적절하게 쓰이는 것이 중요합니다.
1. while 문
while
문은 주어진 조건이 참인 동안 계속해서 코드를 반복 실행합니다. 반복할 코드와 조건을 정의할 수 있으며, 보통 조건이 거짓이 될 때까지 실행됩니다. 기본 문법은 다음과 같습니다:
while 조건:
반복할 코드
예를 들어, i
가 0부터 9까지 증가하면서 “Hello, world!”를 출력하는 코드는 다음과 같습니다:
i = 0
while i < 10:
print("Hello, world!")
i += 1
무한 루프 처리
특정 상황에서는 무한 루프를 만들어야 할 수도 있습니다. while True:
와 같이 조건을 항상 참으로 설정하면 반복문이 무한히 실행됩니다. 그러나 무한 루프는 반드시 종료 조건이 있어야 하며, 이를 위해 break
문을 사용할 수 있습니다.
while True:
# 반복할 코드
if 종료_조건:
break
2. for 문
for
문은 특정 시퀀스(리스트, 튜플, 문자열 등)의 요소를 차례로 반복하여 처리하게 해줍니다. for
문은 주로 반복 횟수가 미리 정해졌을 때 사용됩니다. 기본 문법은 아래와 같습니다:
for 요소 in 시퀀스:
반복할 코드
리스트의 각 요소를 출력하는 예시는 다음과 같습니다:
fruits = ["apple", "banana", "orange"]
for fruit in fruits:
print(fruit)
break와 continue 활용하기
반복문 내에서 break
와 continue
키워드를 사용하면 반복문의 흐름을 제어할 수 있습니다.
- break: 반복문을 즉시 종료합니다.
- continue: 현재 반복을 건너뛰고 다음 반복을 시작합니다.

break 예제
아래 코드는 사용자가 특정 숫자를 입력했을 때 반복문이 종료되는 모습을 보여줍니다:
i = 0
while i < 10:
if i == 5:
break
print(i)
i += 1
continue 예제
아래 코드는 자연수 중 홀수는 출력하지 않고, 짝수만 출력하는 예제입니다.
for i in range(10):
if i % 2 != 0:
continue
print(i)
반복문 활용 예제
반복문을 활용하여 간단한 숫자 맞추기 게임을 만들어 보겠습니다. 이 게임에서는 컴퓨터가 랜덤으로 선택한 숫자를 사용자가 맞춰야 합니다.
import random
correct_number = random.randint(1, 20)
attempts = 0
while True:
user_input = int(input("1에서 20 사이의 숫자를 입력하세요: "))
attempts += 1
if user_input == correct_number:
print("정답입니다!")
break
elif user_input < correct_number:
print("더 큰 숫자입니다.")
else:
print("더 작은 숫자입니다.")
print(f"그동안 {attempts}번의 시도로 맞추셨습니다.")
위 코드는 사용자의 입력을 통해 정답을 맞출 때까지 반복하는 과정을 보여줍니다. 사용자는 각 시도 후에 더 큰 숫자 또는 더 작은 숫자를 입력하라는 힌트를 받습니다.

결론
파이썬의 반복문은 프로그래밍에서 매우 중요한 요소입니다. while
문과 for
문을 적절히 활용하면 여러 가지 작업을 효율적으로 수행할 수 있습니다. 또한, break
와 continue
를 사용하여 반복문의 흐름을 제어하는 방법을 익히면 더욱 유용한 프로그램을 작성할 수 있습니다. 실습을 통해 더욱 깊이 있는 이해를 만드시기 바랍니다!
자주 묻는 질문 FAQ
파이썬에서 반복문은 왜 필요한가요?
반복문은 특정 작업을 여러 번 수행해야 할 때 유용합니다. 이를 통해 코드의 중복을 줄이고 효율성을 높일 수 있습니다.
while 문과 for 문의 차이는 무엇인가요?
while 문은 주어진 조건이 참인 동안 계속 반복하고, for 문은 특정 시퀀스의 요소를 순차적으로 처리합니다.
무한 루프란 무엇이고 어떻게 처리하나요?
무한 루프는 종료 조건이 없이 계속 반복되는 구조입니다. 이를 해결하기 위해서 break 문을 사용하여 특정 조건에서 반복을 중단할 수 있습니다.
break와 continue의 차이점은 무엇인가요?
break는 현재 반복문을 즉시 종료하는 반면, continue는 현재 반복을 건너 뛰고 다음 반복을 계속 진행합니다.