파이썬 반복문 완벽 가이드: for문과 while문을 제대로 이해하자! 🐍

 프로그래밍을 처음 시작할 때 가장 먼저 배우는 것 중 하나가 바로 반복문입니다. 반복문은 코드의 효율성을 높이고, 같은 작업을 여러 번 수행할 때 필수적인 도구입니다. 오늘은 파이썬의 두 가지 주요 반복문인 for문while문에 대해 알아보겠습니다. 초보자도 쉽게 이해할 수 있도록 예제 코드와 함께 설명하니 끝까지 읽어보세요! 😊

 🔍 파이썬의 반복문이란?


반복문은 특정 조건이 충족되는 동안, 또는 정해진 횟수만큼 코드를 반복 실행하는 구조입니다. 파이썬에서는 두 가지 주요 반복문을 제공합니다:


- `while` 문: 조건이 참(True)인 동안 코드를 반복 실행합니다.

- `for` 문: 컬렉션(리스트, 튜플 등)이나 범위를 순회하며 코드를 실행합니다.


 🌀 while 문: 조건 기반 반복


 기본 구조

`while` 문은 특정 조건이 참(True)일 때만 코드를 계속 실행합니다. 조건이 거짓(False)이 되면 루프가 종료됩니다.


```python

i = 1  # 초기값 설정

while i <= 5:  # 조건 검사

    print(f"현재 숫자: {i}")

    i += 1  # i 값을 증가시켜 조건을 변경

```


 실행 결과

```

현재 숫자: 1

현재 숫자: 2

현재 숫자: 3

현재 숫자: 4

현재 숫자: 5

```


 무한 루프와 break 활용 🚨

조건을 잘못 설정하면 프로그램이 끝나지 않는 무한 루프에 빠질 수 있습니다. 이를 방지하려면 `break`를 사용해 루프를 강제로 종료할 수 있습니다.


```python

while True:

    user_input = input("종료하려면 'q'를 입력하세요: ")

    if user_input.lower() == 'q':

        print("프로그램 종료!")

        break  # 루프 탈출

```


 🔄 for 문: 컬렉션 기반 반복


 기본 구조

`for` 문은 리스트, 튜플, 문자열 등 이터러블(iterable) 객체를 순회하며 각 요소에 접근합니다.


```python

fruits = ["사과", "바나나", "오렌지"]

for fruit in fruits:

    print(f"나는 {fruit}를 좋아해요! 🍎🍌🍊")

```


 실행 결과

```

나는 사과를 좋아해요! 🍎🍌🍊

나는 바나나를 좋아해요! 🍎🍌🍊

나는 오렌지를 좋아해요! 🍎🍌🍊

```


 range() 함수와 함께 사용하기 📏

숫자를 반복하고 싶다면 `range()` 함수를 사용하세요. `range(start, stop, step)` 형식으로 시작값, 종료값, 증감값을 지정할 수 있습니다.


```python

for i in range(1, 6):  # 1부터 5까지 반복 (6은 포함되지 않음)

    print(f"카운트다운: {i}")

```


 💡 while vs for: 언제 어떤 걸 사용할까?


 🎯 실전 예제 모음


 예제 1: 구구단 출력하기 (for 문 활용)

```python

# 구구단 출력하기 📖

for i in range(2, 10):  # 단 (2단부터 9단까지)

    for j in range(1, 10):  # 곱하는 수 (1부터 9까지)

        print(f"{i} x {j} = {i * j}")

    print("-" * 10)  # 단 구분선 출력

```


 예제 2: 특정 조건 건너뛰기 (continue 활용)

```python

# 짝수만 출력하기 🔢

for i in range(1, 11):

    if i % 2 != 0:

        continue  # 홀수는 건너뜀

    print(f"짝수: {i}")


# 출력

짝수: 2

짝수: 4

짝수: 6

짝수: 8

짝수: 10

```


 예제 3: 사용자 입력 받기 (while 문 활용)

```python

# 사용자 입력을 받아 합산하기 ➕

total = 0


while True:

    num = input("숫자를 입력하세요 (종료하려면 'q'): ")

    if num.lower() == 'q':

        break

    if not num.isdigit():

        print("숫자를 입력해주세요!")

        continue

    

    total += int(num)


print(f"입력된 숫자의 총합은 {total}입니다.")

```


 🚀 고급 팁: 더 효율적인 반복문 활용법


 리스트 컴프리헨션으로 간결하게 작성하기 ✨

리스트 컴프리헨션을 사용하면 간단한 작업을 한 줄로 처리할 수 있습니다.


```python

# 기존 방식 (for 문)

squares = []

for x in range(10):

    squares.append(x**2)


# 리스트 컴프리헨션 방식 💡

squares = [x**2 for x in range(10)]

print(squares)


# 출력

[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

```


 itertools 모듈로 강력한 반복 구현하기 🔧

파이썬의 `itertools` 모듈은 복잡한 반복 작업을 손쉽게 처리할 수 있습니다.


```python

from itertools import product


# 좌표 생성하기 🗺️ (x, y 조합)

for x, y in product(range(3), repeat=2):

    print(f"좌표: ({x}, {y})")


# 출력

좌표: (0, 0)

좌표: (0, 1)

좌표: (0, 2)

좌표: (1, 0)

좌표: (1, 1)

좌표: (1, 2)

좌표: (2, 0)

좌표: (2, 1)

좌표 : (2, 2)

```


 🏁 마무리하며…


파이썬의 `for`와 `while`은 매우 강력하면서도 직관적인 도구입니다. 오늘 배운 내용을 바탕으로 다양한 문제를 해결해 보세요! 😊 아래 팁도 기억하세요:


- `while`은 조건 기반으로 동작하므로 종료 조건을 명확히 설정하세요.

- `for`는 컬렉션 순회에 적합하며, `range()`와 함께 사용하면 유용합니다.

- 무한 루프가 필요하다면 반드시 `break`로 탈출 조건을 만들어야 합니다.


여러분도 이제 파이썬으로 멋진 코드를 작성할 준비가 되셨나요? 🐍💻  






#파이썬 #Python #프로그래밍 #코딩 반복문 #while문 #for문 #리스트컴프리헨션 #itertools #코드예제 #프로그래밍기초 #소프트웨어개발 #데이터분석 #개발자팁 #파이썬초보




0 댓글