Python의 반복문은 특정 코드를 여러 번 실행할 수 있게 해주는 강력한 도구입니다. for문과 while문은 각각 다른 용도로 사용되며, 반복 제어를 통해 다양한 작업을 수행할 수 있습니다. 이번 포스팅에서는 Python의 반복문 기본 구조와 활용법, 주의할 점까지 상세히 살펴보겠습니다.
0. 반복문의 기본 개념
반복문은 코드를 여러 번 실행하기 위한 구조입니다. Python에서는 for 문과 while 문이 주로 사용되며, 각 반복문은 동작 방식이 다릅니다.
for 문
• 시퀀스(Sequence)의 각 요소를 순차적으로 처리합니다.
• 반복 횟수가 명확히 정해진 경우 적합합니다.
• 예: 리스트, 튜플, 문자열, range() 등.
while 문
• 조건이 참(True)인 동안 반복 실행합니다.
• 반복 횟수가 조건에 따라 달라지는 경우 적합합니다.
1. for 반복문
기본 구조
for 문은 시퀀스(예: 리스트, 문자열)의 각 요소를 순회하며 코드를 실행합니다. 반복 대상이 명확한 경우 가장 적합한 반복문입니다.

for 문 동작 방식
1. Python의 for 문은 반복 대상(리스트, 문자열 등)에서 첫 번째 요소를 가져옵니다.
2. 해당 요소를 반복 변수에 저장합니다.
3. 저장된 값을 이용해 코드 블록을 실행합니다.
4. 다음 요소로 이동하여 과정을 반복합니다.
5. 반복 대상의 모든 요소를 처리하면 반복문이 종료됩니다.
예제 1: 리스트 순회

출력 결과:

예제 2: 범위 순회
range() 함수와 함께 사용하여 일정 범위의 숫자를 순회할 수 있습니다.

출력 결과:

2. while 반복문
기본 구조
while 반복문은 조건이 참(True)인 동안 계속해서 코드를 실행합니다.

while 문 동작 방식
1. 조건식을 평가하여 참(True)이면 코드 블록을 실행합니다.
2. 실행이 끝난 후 조건식을 다시 평가합니다.
3. 조건이 거짓(False)이 되면 반복문이 종료됩니다.
예제 : 숫자 카운트 다운

출력 결과:

3. 반복 제어문 : Break & Continue
3.1 break 문
break 문은 반복문을 즉시 종료합니다.

출력 결과:

3.2 continue 문
continue 문은 현재 반복을 건너뛰고 다음 반복을 진행합니다.

출력 결과:

4. 반복문 활용 팁
4.1 else 절과 함께 사용하기
반복문과 else 절을 함께 사용하여 반복이 정상적으로 종료된 후 실행될 코드를 지정할 수 있습니다.

출력 결과:

4.2 중첩 반복문
반복문 안에 또 다른 반복문을 포함하여 2차원 데이터 등을 처리할 수 있습니다.

출력 결과:

4.3 리스트 내포(List Comprehension)
리스트 내포를 사용하면 간결하고 효율적으로 리스트를 생성할 수 있습니다.
예제 1 :

출력 결과:

예제 2:

출력 결과:

5. 반복문 사용 시 주의할 점
• 반복 횟수 확인
반복 횟수가 너무 많아지거나 조건을 잘못 설정하면 성능 저하가 발생할 수 있습니다.
• 무한 루프 방지
특히 while 문을 사용할 때 종료 조건을 명확히 설정해야 합니다.

• 가독성 유지
중첩된 반복문은 가독성을 떨어뜨릴 수 있습니다. 필요하면 함수를 사용해 코드 블록을 분리하세요.
• 적절한 반복문 선택
정해진 범위를 순회하는 경우에는 for 문, 조건에 따라 반복이 필요한 경우에는 while 문을 사용하는 것이 적합합니다.
Python의 반복문은 단순한 작업부터 복잡한 데이터 처리까지 다양한 작업을 효율적으로 수행할 수 있습니다. for 문과 while 문, 그리고 반복 제어문(break, continue)을 잘 활용하면 더욱 간결하고 효율적인 코드를 작성할 수 있습니다. 이상으로 포스팅 마치겠습니다.
'Language > Python' 카테고리의 다른 글
| <Python>#7 : Python Dictionary : Key-Value Pair로 데이터 관리하기 (0) | 2025.01.06 |
|---|---|
| <Python>#6 : Python Strings : 기본 개념부터 문자열 메서드까지 (1) | 2025.01.06 |
| <Python>#4 : Python List : 리스트 생성부터 활용까지 (6) | 2025.01.04 |
| <Python>#3 : Python Control Flow : 조건과 논리로 흐름 제어하기 (7) | 2025.01.03 |
| <Python>#2 : Python Functions : 함수 정의부터 호출까지 (10) | 2025.01.02 |