파이썬프로그래밍기초 6강 반복 구조와 리스트 완벽 정리 (while문, for문, 핵심 요약)
파이썬 프로그래밍 기초 독학 시리즈로 다시 찾아왔습니다. 지난 시간까지는 프로그램의 흐름을 조건에 따라 분기하는 '조건문(if문)'에 대해 알아봤는데요. 오늘은 프로그래밍의 효율성을 극대화하고 소스코드를 획기적으로 줄여주는 핵심 중의 핵심 개념인 '반복 구조(Loop)'와 여러 데이터를 하나로 묶어서 관리하는 '리스트(List)'에 대해 정리를 해보려고 합니다.

왜 파이썬에서 반복 구조를 배워야 할까요?
우리가 화면에 똑같은 문장을 5번, 혹은 100번 넘게 출력해야 한다면 매번 print() 함수를 복사하고 붙여넣어야 할까요? 만약 10만 번을 반복해야 한다면 수작업으로는 불가능에 가까울 것입니다. 파이썬에서는 while문과 for문을 사용해 단 몇 줄의 코드만으로도 수천, 수만 번의 반복 작업을 컴퓨터에게 정확하게 지시할 수 있습니다.
이번 포스팅에서는 파이썬프로그래밍 기초 6강 강의록을 바탕으로 조건 제어 반복과 계수 제어 반복의 구문 형식, 복합 할당 연산자, 그리고 리스트의 기초까지 핵심만 쏙쏙 요약해 드리겠습니다. 아울러 시험에 자주 출제되는 기출문제 5개 유형의 명쾌한 정답과 해설까지 깔끔하게 정리해 올립니다.
1. 파이썬 6강 핵심 내용 요약
① 반복 구조의 정의와 종류
반복 구조란 특정 영역의 명령문을 조건에 따라 여러 번 재실행하는 구조를 말합니다. 동일한 코드를 중복해서 작성하지 않아도 되므로 프로그램의 용량이 줄고 유지보수가 쉬워집니다.
- 조건 제어 반복 (while문): 지정한 반복-계속-조건이 '참(True)'인 동안 명령문 집합을 무한히 반복합니다. 조건이 '거짓(False)'이 되면 반복을 탈출합니다.
- 계수 제어 반복 (for문): 정해진 횟수만큼 반복하거나 리스트, 범위(range) 등의 데이터를 순차적으로 순회할 때 사용합니다.
② 복합 할당 연산자 (증감 연산)
반복문 내에서 카운터(반복 횟수 세기) 변수를 제어할 때 필수적으로 사용되는 연산자입니다.
- i += 1은 i = i + 1과 완전히 동일한 의미입니다.
- 그 외에도 -=, *=, /= 등의 복합 할당 연산자가 있어 코드를 간결하게 만들어 줍니다.
- 주의: while문 내부에서 증감식을 누락하면 조건이 항상 참이 되어 프로그램이 멈추지 않는 무한 루프(Infinite Loop)에 빠지게 됩니다.
③ 반복 구조 설계 전략
반복 루프를 안전하게 설계하려면 다음 3가지 요소가 반드시 포함되어야 합니다.
- 초기값 설정: 반복을 시작하기 전 카운터 변수의 시작 값을 지정합니다. (예: i = 1)
- 조건식 작성: 언제까지 반복을 계속할 것인지 명시합니다. (예: while i <= 5:)
- 조건 변수의 갱신: 루프 몸체 안에서 변수 값을 변화시켜 결국 조건식이 거짓이 되도록 만듭니다. (예: i += 1)
④ 리스트(List)의 개념과 인덱스
리스트는 여러 개의 독립된 값을 하나의 변수 이름으로 묶어서 관리하는 자료형입니다.
- 대괄호 []를 사용하여 생성하며, 내부 요소들은 쉼표 ,로 구분합니다. (예: fruits = ["사과", "바나나", "딸기"])
- 인덱스(Index): 리스트 내부의 방 번호는 0번부터 시작합니다. (fruits[0]은 "사과")
2. 기말대비 기출 예상 문제 5 (정답 및 해설)
[문제 1] 다음 중 파이썬의 '반복 구조(Loop)'에 대한 설명으로 가장 올바르지 않은 것은?
- ① 반복 구조를 사용하면 동일한 코드를 중복해서 작성하지 않아도 되므로 효율적이다.
- ② while문은 반복-계속-조건이 '거짓(False)'인 동안 명령문을 반복 실행한다.
- ③ for문은 주로 정해진 횟수만큼 반복하거나 순서열의 요소를 순회할 때 사용한다.
- ④ while문 내부에서 조건 변수를 갱신하지 않으면 무한 루프에 빠질 수 있다.
[정답] ② [해설] while문은 조건식이 '참(True)'인 동안 내부 명령문을 반복 실행하며, 조건식이 '거짓(False)'이 되는 순간 루프를 탈출합니다. 따라서 ②번 설명은 반대로 서술되어 오답입니다.
[문제 2] 다음 파이썬 소스 코드를 실행했을 때 화면에 최종적으로 출력되는 i의 값은 무엇인가요?
i = 1
while i < 5:
i += 2
print(i)
- ① 3
- ② 4
- ③ 5
- ④ 7
[정답] ③ [해설] 변수의 변화를 순서대로 추적해 보면 쉽습니다.
- 초기값 i = 1일 때, 1 < 5이므로 참(True) ➔ i += 2가 실행되어 i = 3이 됨.
- i = 3일 때, 3 < 5이므로 참(True) ➔ i += 2가 실행되어 i = 5가 됨.
- i = 5일 때, 5 < 5는 거짓(False)이 되므로 while문을 탈출합니다.
- 따라서 최종 print(i)에 의해 화면에 출력되는 값은 5입니다.
[문제 3] 파이썬에서 'i = i + 1'과 완전히 동일한 기능을 수행하며 코드를 간결하게 단축시켜 주는 '복합 할당 연산자'의 표현으로 옳은 것은?
- ① i =+ 1
- ② i == 1
- ③ i ++
- ④ i += 1
[정답] ④ [해설] 파이썬에서 값을 더해서 다시 대입하는 복합 할당 연산자는 += 기호를 사용합니다. ①번처럼 순서가 바뀌면 단순 양수 대입이 되며, ③번(++) 연산자는 파이썬에서 지원하지 않는 문법입니다.
[문제 4] 다음 파이썬 리스트 구조에 대한 설명 중 가장 올바르지 않은 것은?
score_list = [85, 90, 95, 100]
- ① score_list의 첫 번째 요소인 85를 가져오기 위한 코드는 score_list[1]이다.
- ② 리스트는 대괄호 [ ]를 사용하여 생성한다.
- ③ score_list[3]의 값은 100이다.
- ④ 여러 개의 독립된 값을 하나의 변수 이름으로 묶어서 관리할 수 있다.
[정답] ① [해설] 파이썬을 포함한 대부분의 프로그래밍 언어에서 리스트의 인덱스(방 번호)는 1이 아니라 0부터 시작합니다. 따라서 첫 번째 요소인 85를 가리키는 올바른 코드는 score_list[0]입니다.
[문제 5] 안전하고 논리적인 '반복 구조 설계 전략'을 세울 때 루프 내부나 주변에 반드시 포함해야 하는 3가지 필수 요소가 아닌 것은?
- ① 반복을 제어할 조건 변수의 초기값 설정
- ② 반복을 언제까지 유지할지 결정하는 조건식 작성
- ③ 루프 몸체 안에서 조건 변수의 값을 변화시키는 갱신 처리
- ④ 조건문 내부에 반드시 중첩된 if-else 구문 추가
[정답] ④ [해설] 반복문이 무한 루프에 빠지지 않고 정상 작동하기 위한 3대 설계 전략은 **[초기값 설정, 조건식 작성, 조건 변수 갱신]**입니다. 반복문 내부에 if-else문을 중첩하는 것은 프로그램의 필요에 따른 선택 사항일 뿐, 필수 요소는 아닙니다.
마무리 :
오늘 정리해 드린 파이썬 6강 요약과 문제 해설이 여러분의 학업 및 자격증 시험 대비에 큰 도움이 되었으면 좋겠습니다. 이 포스팅이 도움이 되셨다면 공감과 구독 부탁드립니다. 다음 7강에서도 더 쉽고 알찬 파이썬 기초 정보로 찾아오겠습니다.
혼자 공부하는 파이썬:1:1 과외하듯 배우는 프로그래밍 자습서 - 프로그래밍 언어 | 쿠팡
현재 별점 4.8점, 리뷰 305개를 가진 혼자 공부하는 파이썬:1:1 과외하듯 배우는 프로그래밍 자습서! 지금 쿠팡에서 더 저렴하고 다양한 프로그래밍 언어 제품들을 확인해보세요.
www.coupang.com
"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."
'IT 이야기' 카테고리의 다른 글
| 방송통신대 파이썬프로그래밍기초::8강 콜렉션1 &기말시험 예상기출문제(정답및 해설) (0) | 2026.05.24 |
|---|---|
| 방송통신대 파이썬프로그래밍기초::7강 함수 &기말시험 예상기출문제(정답및 해설) (0) | 2026.05.23 |
| 방송통신대 파이썬프로그래밍기초::5강 선택 구조 &기말시험 예상기출문제(정답및 해설) (0) | 2026.05.21 |
| 방송통신대 파이썬프로그래밍기초::4강 구조적 프로그래밍 &기말시험 예상기출문제(정답및 해설) (0) | 2026.05.19 |
| 방송통신대 파이썬프로그래밍기초::12강 파일 &기말시험 예상기출문제(정답및 해설) (0) | 2026.05.18 |
댓글