반복문은 프로그래밍에서 특정 코드를 여러 번 실행할 때 사용되는 중요한 구조입니다. 파이썬(Python)에서는 반복문을 사용하여 효율적으로 작업을 처리할 수 있습니다. 이번 포스팅에서는 파이썬의 두 가지 주요 반복문인 for와 while의 사용법과 차이점에 대해 알아보겠습니다.

1. for 반복문

for 반복문은 주어진 시퀀스(리스트, 튜플, 문자열 등)의 각 요소를 순차적으로 순회(iterate)하며 반복 작업을 수행할 때 사용됩니다.

1.1. 기본 문법

for 변수 in 시퀀스:
    실행할 코드

예시

# 리스트의 요소를 순회하며 출력
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
    print(fruit)

위 코드에서는 리스트 fruits의 각 요소를 fruit 변수에 할당하며, 순차적으로 출력합니다.

1.2. range() 함수와 함께 사용

range() 함수는 일정한 범위의 숫자 시퀀스를 생성할 때 유용합니다. for 문과 함께 자주 사용됩니다.

# 0부터 4까지의 숫자를 순회하며 출력
for i in range(5):
    print(i)

위 코드에서는 range(5)가 0부터 4까지의 숫자 시퀀스를 생성하며, i는 각 숫자를 차례대로 출력합니다.

1.3. 중첩 for 

for 문은 다른 for 문 내부에 중첩하여 사용할 수 있습니다. 이를 통해 2차원 리스트나 중첩된 데이터를 순회할 수 있습니다.

# 2차원 리스트의 요소를 모두 출력
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

for row in matrix:
    for element in row:
        print(element, end=" ")
    print()

위 코드에서는 2차원 리스트 matrix의 각 요소를 출력합니다.

2. while 반복문

while 반복문은 조건이 참(True)인 동안 특정 코드를 반복 실행합니다. 주어진 조건이 거짓(False)이 되면 반복문이 종료됩니다.

2.1. 기본 문법

while 조건:
    실행할 코드

예시

# 5보다 작은 동안 숫자를 출력
i = 0
while i < 5:
    print(i)
    i += 1

위 코드에서는 i가 5보다 작을 때까지 i를 출력하고, 매 반복마다 i의 값을 1씩 증가시킵니다.

2.2. 무한 루프

while 문에서 조건이 항상 참이면 무한 루프(Infinite Loop)가 발생합니다. 무한 루프는 의도적으로 사용하는 경우도 있지만, 종료 조건을 잊어버리면 프로그램이 멈추지 않고 계속 실행되므로 주의가 필요합니다.

# 무한 루프 예시 (주의: 실행 시 강제 종료 필요)
# while True:
#     print("This will run forever!")

2.3. break와 continue 

break 문은 반복문을 즉시 종료하며, continue 문은 현재 반복을 건너뛰고 다음 반복으로 넘어갑니다.

# break와 continue 사용 예시
i = 0
while i < 10:
    i += 1
    if i == 5:
        continue  # i가 5일 때 출력하지 않고 다음 반복으로 넘어감
    if i == 8:
        break  # i가 8일 때 반복문 종료
    print(i)

위 코드에서 i가 5일 때는 출력하지 않고, 8일 때는 반복문이 종료됩니다.

3. for와 while의 차이점

  • for 반복문: 반복 횟수가 정해져 있거나, 시퀀스(리스트, 튜플 등)의 각 요소를 순회할 때 주로 사용됩니다.
  • while 반복문: 반복 횟수가 정해지지 않았거나, 특정 조건이 만족될 때까지 반복할 때 사용됩니다.

예시 비교

# for 문을 사용한 반복
for i in range(5):
    print(i)

# while 문을 사용한 동일한 반복
i = 0
while i < 5:
    print(i)
    i += 1

위 두 코드 모두 0부터 4까지의 숫자를 출력하지만, 반복문 구조는 다릅니다. for 문은 반복 횟수가 명확할 때 간결하게 사용되며, while 문은 반복 조건이 동적으로 결정될 때 유용합니다.

4. 결론

이번 포스팅에서는 파이썬의 반복문 for와 while에 대해 알아보았습니다. 반복문은 코드의 중복을 줄이고, 효율적인 프로그램을 작성하는 데 필수적인 도구입니다. for 문은 시퀀스를 순회할 때 주로 사용되며, while 문은 특정 조건을 만족하는 동안 반복해야 할 때 유용합니다. 반복문을 잘 이해하고 활용하면 복잡한 작업도 쉽게 처리할 수 있습니다. 다음 포스팅에서는 반복문과 함께 자주 사용되는 break와 continue에 대해 더 깊이 알아보겠습니다.


이 글을 통해 파이썬의 반복문을 이해하고, 적절한 상황에서 for와 while을 효과적으로 사용할 수 있는 능력을 기를 수 있을 것입니다. 직접 예제를 실습해보며 반복문의 작동 방식을 확인해 보세요!

+ Recent posts