파이썬 반복문 쉽게 이해하기
프로그래밍을 하다 보면 반복적인 작업을 효율적으로 처리해야 할 때가 많이 있습니다. 파이썬에서는 이러한 반복 작업을 수행하기 위해 ‘반복문’이라는 도구를 제공합니다. 반복문을 활용하면 특정 코드를 여러 번 실행할 수 있어, 수동으로 작업하기보다 훨씬 더 효율적입니다. 이번 포스트에서는 파이썬의 두 가지 주요 반복문인 for문과 while문을 중심으로 이야기해보겠습니다.

반복문이란 무엇인가요?
반복문은 특정 작업을 여러 번 수행하고자 할 때 사용되는 프로그래밍 구조입니다. 예를 들어, 1부터 10까지의 숫자를 손으로 하나하나 써야 한다면 매우 지루할 것입니다. 하지만 컴퓨터를 이용하면 단 몇 줄의 코드로 쉽게 이 작업을 수행할 수 있습니다. 파이썬에서는 주로 for문과 while문을 사용하여 반복 작업을 처리합니다.
for문과 range() 함수
for문은 주로 정해진 횟수만큼 반복하고자 할 때 사용됩니다. 여기서 range() 함수는 특정 범위의 숫자를 생성해주는 유용한 함수입니다. 이를 통해 for문의 반복 실행 횟수를 쉽게 조정할 수 있습니다.
예를 들어, 1부터 5까지의 숫자를 출력하고 싶다면 다음과 같은 코드를 사용할 수 있습니다:
for i in range(1, 6):
print(i)
위 코드는 1부터 5까지의 숫자를 차례로 출력합니다. 주의할 점은 range(1, 6)이 6 이전의 숫자까지 생성하므로, 6은 포함되지 않는다는 것입니다.
while문에 대해 알아보기
while문은 주어진 조건이 참인 동안 계속 반복합니다. 이 반복문은 언제 종료될지 모를 경우에 유용합니다. 그러나 조건이 항상 참일 경우, 즉 무한 루프에 빠지지 않도록 주의해야 합니다.
예를 들어, 1부터 5까지 출력하기 위해 while문을 사용하면 다음과 같은 코드가 됩니다:
i = 1
while i <= 5:
print(i)
i += 1
이 코드에서 i가 5보다 커질 때 반복이 멈추게 됩니다. 하지만 만약 i += 1을 잊게 되면, 프로그램은 계속 실행되어 멈추지 않게 됩니다.
무한 루프와 탈출 조건
무한 루프는 조건이 항상 참이어서 반복이 끝나지 않는 경우입니다. 이때는 break 문을 사용해 루프를 중단할 수 있습니다. 다음 코드를 예로 들 수 있습니다:
while True:
answer = input("종료하려면 '끝'을 입력하세요: ")
if answer == '끝':
print("프로그램을 종료합니다.")
break
이 코드는 사용자가 '끝'이라고 입력할 때까지 무한히 반복됩니다. 사용자가 '끝'을 입력하면 break에 의해 루프가 종료됩니다.

구구단 출력 프로그램 만들기
for문과 while문을 활용하여 구구단 프로그램을 만들어보겠습니다. 구구단은 아주 간단한 예제로, 두 개의 for문을 사용하여 다음과 같이 구현할 수 있습니다:
for i in range(2, 10):
for j in range(1, 10):
print(f"{i} x {j} = {i * j}")
print()
위 코드는 2단부터 9단까지의 곱셈 결과를 출력합니다. 첫 번째 반복문은 단수를, 두 번째 반복문은 각 단수의 곱해지는 수를 나타냅니다.
while문을 활용한 숫자 맞추기 게임
while문을 사용하여 간단한 숫자 맞추기 게임을 구현할 수도 있습니다. 사용자가 정답을 맞출 때까지 계속 반복하는 구조입니다:
secret_number = 7
while True:
guess = int(input("1부터 10 사이의 숫자를 맞춰보세요: "))
if guess == secret_number:
print("정답입니다!")
break
elif guess > secret_number:
print("너무 커요! 더 작은 숫자를 입력해보세요.")
else:
print("너무 작아요! 더 큰 숫자를 입력해보세요.")
이 게임은 사용자가 정답을 맞추기 전까지 계속 반복됩니다. 사용자가 숫자를 입력할 때마다 피드백이 주어져, 점차 정답에 가까워질 수 있도록 돕습니다.
for문과 while문의 차이점
for문과 while문의 가장 큰 차이점은 반복 횟수의 지정 여부입니다. for문은 반복 횟수가 미리 정해져 있을 때 주로 사용하며, while문은 조건이 참인 동안 계속 반복됩니다. 다음은 각 반복문의 주요 특징입니다:
- for문: 시퀀스 또는 특정 범위를 순회할 때 사용합니다.
- while문: 조건에 따라 반복될 때, 즉 언제 반복이 끝날지 모를 때 사용합니다.

결론
파이썬의 반복문은 프로그래밍에서 매우 강력한 도구입니다. for문과 while문을 적절하게 활용하면 코드의 효율성을 높이고 반복 작업을 간단하게 처리할 수 있습니다. 이번 포스트에서 설명한 내용을 바탕으로 각 반복문이 어떻게 사용되는지 이해하고 실습해보시기 바랍니다.
자주 묻는 질문 FAQ
파이썬에서 반복문이란 무엇인가요?
반복문은 특정 작업을 여러 번 실행하기 위해 사용되는 프로그래밍 구조입니다. 이를 통해 동일한 코드를 반복해서 작성할 필요 없이 효율적으로 작업을 처리할 수 있습니다.
for문과 while문의 차이점은 무엇인가요?
for문은 반복 횟수가 명확히 정해져 있을 때 사용되며, while문은 주어진 조건이 참인 동안 계속해서 반복됩니다. 이 둘의 사용 경우가 다릅니다.
무한 루프란 무엇이며 어떻게 방지하나요?
무한 루프는 반복 조건이 항상 참이어서 종료되지 않는 상황을 의미합니다. 이를 방지하기 위해서는 조건을 적절히 설정하거나, break 문을 사용해 루프를 종료하는 방법이 있습니다.