목록으로

프로그래밍 · Python

Python 입문 시리즈 #6: for 반복문으로 같은 작업 반복하기

BeanCon
Python 입문자가 for 반복문과 range 함수를 학습하는 과정을 표현한 대표 이미지

Python 입문 시리즈 6편입니다. for 반복문의 개념과 기본 구조, range() 함수, 숫자·문자열·리스트 반복, enumerate(), 합계 계산, 구구단, 중첩 반복문, break와 continue, 실무 예제와 자주 하는 실수를 정리했습니다.

1. 반복문 Loop란?

지난 시간에는 조건문 if를 이용하여 프로그램이 스스로 판단하는 방법을 배웠습니다. 이번에는 프로그래밍의 또 다른 핵심 개념인 반복문 Loop를 배워보겠습니다.

반복문은 같은 작업을 여러 번 반복해서 실행할 수 있게 해주는 기능입니다.

반복문이 필요한 작업
  • 안녕하세요를 100번 출력하기
  • 학생 30명의 점수 처리하기
  • 파일 1,000개를 자동으로 분석하기
  • AI 모델 학습 데이터 반복 처리하기

만약 반복문이 없다면 같은 코드를 수십 번, 수백 번 작성해야 할 것입니다. Python에서는 이러한 반복 작업을 쉽게 처리할 수 있도록 for 문을 제공합니다.

다음 코드는 같은 문장을 5번 출력합니다.

for i in range(5):
    print("안녕하세요")

실행 결과입니다.

안녕하세요
안녕하세요
안녕하세요
안녕하세요
안녕하세요
반복문의 장점

단 두 줄의 코드로 동일한 작업을 여러 번 수행할 수 있습니다.

2. for 문 기본 구조

Python의 for 문 기본 형태입니다.

for 변수 in 반복대상:
    실행할 코드

예제입니다.

for i in range(3):
    print(i)

실행 결과입니다.

0
1
2

range(3)은 다음 값을 의미합니다.

0, 1, 2

for 문은 값을 하나씩 꺼내서 변수 i에 저장한 후 실행합니다.

3. range() 함수 이해하기

range()는 for 문에서 가장 많이 사용하는 함수입니다.

형태의미출력 범위
range(5)0부터 시작하고 종료값은 포함하지 않습니다.0, 1, 2, 3, 4
range(1, 6)시작값부터 종료값 전까지 생성합니다.1, 2, 3, 4, 5
range(1, 11, 2)시작값, 종료값, 증가값을 지정합니다.1, 3, 5, 7, 9

range(5)

for i in range(5):
    print(i)

결과입니다.

0
1
2
3
4

0부터 시작하며 마지막 숫자는 포함되지 않습니다.

range(1, 6)

for i in range(1, 6):
    print(i)

결과입니다.

1
2
3
4
5
range(시작값, 종료값)

종료값은 포함되지 않습니다.

range(1, 11, 2)

for i in range(1, 11, 2):
    print(i)

결과입니다.

1
3
5
7
9
range(시작값, 종료값, 증가값)

4. 숫자 반복 실습

1부터 10까지 출력

for i in range(1, 11):
    print(i)

짝수만 출력

for i in range(2, 11, 2):
    print(i)

결과입니다.

2
4
6
8
10

10부터 1까지 출력

for i in range(10, 0, -1):
    print(i)

결과입니다.

10
9
8
7
6
5
4
3
2
1

5. 문자열과 리스트 반복하기

문자열 반복하기

문자열도 한 글자씩 반복할 수 있습니다.

name = "Python"

for ch in name:
    print(ch)

결과입니다.

P
y
t
h
o
n

문자열 역시 반복 가능한 데이터입니다.

리스트 반복하기

리스트는 for 문과 가장 많이 사용됩니다.

fruits = ["사과", "바나나", "포도"]

for fruit in fruits:
    print(fruit)

결과입니다.

사과
바나나
포도

리스트와 인덱스 함께 사용하기

fruits = ["사과", "바나나", "포도"]

for i in range(len(fruits)):
    print(i, fruits[i])

결과입니다.

0 사과
1 바나나
2 포도

enumerate() 사용하기

실무에서는 enumerate()를 더 많이 사용합니다.

fruits = ["사과", "바나나", "포도"]

for idx, fruit in enumerate(fruits):
    print(idx, fruit)

결과입니다.

0 사과
1 바나나
2 포도

코드가 더욱 읽기 쉽습니다.

6. 반복문 안에서 계산하기

1부터 10까지 합계 구하기

total = 0

for i in range(1, 11):
    total += i

print(total)

결과입니다.

55

동작 과정입니다.

0 + 1
1 + 2
3 + 3
6 + 4
...
55

사용자 입력과 반복문: 구구단 2단 만들기

for i in range(1, 10):
    print(f"2 x {i} = {2*i}")

결과입니다.

2 x 1 = 2
2 x 2 = 4
2 x 3 = 6
...
2 x 9 = 18

7. 중첩 반복문 Nested Loop

반복문 안에 또 다른 반복문을 사용할 수 있습니다.

for 변수1 in 반복대상:
    for 변수2 in 반복대상:
        실행코드

구구단 전체 출력하기

for dan in range(2, 10):
    print(f"\n[{dan}단]")

    for num in range(1, 10):
        print(f"{dan} x {num} = {dan*num}")

실행 결과입니다.

[2단]
2 x 1 = 2
...
2 x 9 = 18

[3단]
3 x 1 = 3
...

8. break와 continue

break 사용하기

break는 반복문을 즉시 종료합니다.

for i in range(10):
    if i == 5:
        break

    print(i)

결과입니다.

0
1
2
3
4

i가 5가 되는 순간 반복문이 종료됩니다.

continue 사용하기

continue는 현재 반복만 건너뜁니다.

for i in range(1, 6):

    if i == 3:
        continue

    print(i)

결과입니다.

1
2
4
5

3만 제외하고 출력됩니다.

9. 실무 예제

실무 예제 1. 학생 점수 평균 계산

scores = [80, 95, 75, 100, 90]

total = 0

for score in scores:
    total += score

average = total / len(scores)

print("평균:", average)

결과입니다.

평균: 88.0

실무 예제 2. 비밀번호 검사

password = "python123"

for ch in password:
    print(ch)

결과입니다.

p
y
t
h
o
n
1
2
3

실제 로그인 시스템, 보안 검사, 문자열 분석 등에 활용됩니다.

실무 예제 3. 파일 자동 처리

files = [
    "report.pdf",
    "image.jpg",
    "data.csv"
]

for file in files:
    print(file, "처리 완료")

결과입니다.

report.pdf 처리 완료
image.jpg 처리 완료
data.csv 처리 완료

실제 업무 자동화 프로그램의 기본 구조입니다.

10. 자주 하는 실수와 실습 문제

초보자가 자주 하는 실수

range 종료값 포함 착각

range(1, 10)은 1부터 9까지입니다. 10은 포함되지 않습니다.

들여쓰기 오류

for 문 아래 실행 코드는 반드시 들여쓰기해야 합니다.

변수 이름 재사용

반복문 종료 후 i 값이 남아있을 수 있으므로 같은 이름을 계속 재사용할 때 주의해야 합니다.

range 종료값 예시입니다.

range(1, 10)

출력 범위입니다.

1~9

들여쓰기 오류 예시입니다.

for i in range(5):
print(i)

오류입니다.

IndentationError

변수 이름 재사용 예시입니다.

for i in range(5):
    print(i)

print(i)

실습 문제

문제 1

1부터 100까지 출력합니다.

문제 2

1부터 100까지의 합을 구합니다. 예상 결과는 5050입니다.

문제 3

사용자로부터 숫자를 입력받아 해당 단의 구구단을 출력합니다.

문제 4

리스트에 저장된 과일 이름을 모두 출력합니다.

문제 2 예상 결과입니다.

5050

문제 3 예시 입력입니다.

7

문제 3 예시 결과입니다.

7 x 1 = 7
7 x 2 = 14
...
7 x 9 = 63

문제 4 리스트입니다.

fruits = ["사과", "바나나", "포도", "수박"]

11. 핵심 정리와 다음 편 예고

이번 시간에는 Python의 반복문인 for 문을 배웠습니다.

핵심 정리
  • for 문은 반복 작업을 수행합니다.
  • range()는 숫자 범위를 생성합니다.
  • 문자열과 리스트도 반복 가능합니다.
  • 중첩 반복문을 사용할 수 있습니다.
  • break는 반복을 종료합니다.
  • continue는 현재 반복을 건너뜁니다.
  • 실무에서 데이터 처리, 파일 처리, AI 학습 등에 매우 많이 사용됩니다.

for 문은 Python 프로그래밍의 핵심 중 하나이며, 거의 모든 프로젝트에서 사용됩니다. 특히 데이터 분석, 웹 개발, 자동화, AI 개발에서는 반복문을 자유롭게 사용할 수 있어야 합니다.

Python 입문 연재 7 예고
  • while 문 기본 문법
  • 무한 반복 Infinite Loop
  • break와 함께 사용하기
  • 사용자 입력 반복 처리
  • 메뉴 선택 프로그램 만들기
  • 실무 활용 사례

댓글

0

댓글을 불러오는 중입니다.