IT프로그래밍/파이썬

Python for문 사용법 : range 반복문과 리스트 반복 예제

MannizDev 2026. 7. 6.

Python for문 사용법 : range 반복문과 리스트 반복 예제

Python에서 같은 작업을 여러 번 반복해야 할 때는 for문을 사용합니다.

처음에는 print()로 한 줄씩 출력하고, input()으로 값을 입력받는 것까지는 쉽게 따라 할 수 있습니다. 그런데 같은 코드를 5번, 10번 반복해야 하는 순간부터는 코드를 계속 복사해서 붙여 넣기 어렵습니다.

이럴 때 사용하는 문법이 for문입니다. 이번 글에서는 range()로 숫자를 반복하는 방법과 리스트 안의 값을 하나씩 꺼내는 방법을 실제 실행 결과와 함께 확인해보겠습니다.

Python for문 range 예제 코드와 실행 결과

 

테스트 환경

이번 글에서 직접 확인한 환경은 아래와 같습니다.

작성 기준: 2026년 7월 6일
운영체제: Windows
로컬 Python: Python 3.9.13
공식 문서 확인: Python 3.14.6 문서의 for statement, range()

Python 버전이 조금 달라도 이 글에서 다루는 for문range() 기본 동작은 Python 3 계열에서 같은 방식으로 이해하면 됩니다.

for문은 언제 사용할까

예를 들어 숫자 0부터 4까지 출력하고 싶다고 해보겠습니다.

print(0)
print(1)
print(2)
print(3)
print(4)

이 방법도 실행은 됩니다. 하지만 100번 반복해야 한다면 코드를 100줄 작성해야 합니다. 수정할 때도 불편합니다.

이럴 때 for문을 사용하면 같은 작업을 짧게 표현할 수 있습니다.

range()로 숫자 반복하기

가장 먼저 range()를 사용한 예제부터 보겠습니다.

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

실행 결과는 아래와 같습니다.

0
1
2
3
4

Python range 반복문 코드와 터미널 출력 결과

 

range(5)는 0부터 5 바로 전까지의 숫자를 만들어줍니다. 그래서 출력 결과가 0, 1, 2, 3, 4가 됩니다.

처음 배울 때는 range(5)가 1부터 5까지라고 생각하기 쉽습니다. 하지만 Python에서는 기본 시작값이 0이고, 끝값은 포함되지 않습니다.

range(1, 6)으로 1부터 5까지 출력하기

1부터 5까지 출력하고 싶다면 시작값과 끝값을 같이 적으면 됩니다.

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

실행 결과입니다.

1
2
3
4
5

여기서도 끝값 6은 포함되지 않습니다. 그래서 1부터 5까지만 출력됩니다.

range(5)     -> 0, 1, 2, 3, 4
range(1, 6)  -> 1, 2, 3, 4, 5

리스트 값을 하나씩 꺼내기

for문은 숫자 반복에만 사용하는 것이 아닙니다. 리스트 안에 들어 있는 값을 하나씩 꺼낼 때도 자주 사용합니다.

fruits = ["apple", "banana", "orange"]

for fruit in fruits:
    print(fruit)

실행 결과입니다.

apple
banana
orange

Python 리스트 반복 예제 코드와 실행 결과

 

여기서 fruit는 리스트에서 하나씩 꺼낸 값을 담는 변수입니다. 첫 번째 반복에서는 "apple", 두 번째 반복에서는 "banana", 세 번째 반복에서는 "orange"가 들어갑니다.

변수 이름은 꼭 fruit가 아니어도 됩니다. 다만 초보 단계에서는 리스트 이름과 의미가 이어지도록 적는 것이 읽기 좋습니다.

names = ["Manni", "Tom", "Jane"]

for name in names:
    print(name)

input()으로 입력받은 횟수만큼 반복하기

이번에는 사용자가 입력한 숫자만큼 반복해보겠습니다.

count = int(input("반복 횟수를 입력하세요: "))

for i in range(count):
    print(i + 1, "번째 반복입니다.")

실행할 때 3을 입력하면 아래처럼 출력됩니다.

반복 횟수를 입력하세요: 3
1 번째 반복입니다.
2 번째 반복입니다.
3 번째 반복입니다.

input()으로 받은 값은 문자열입니다. 그래서 반복 횟수로 사용하려면 int()로 숫자로 바꿔야 합니다.

그리고 range(count)는 0부터 시작하기 때문에 화면에 보여줄 때는 i + 1을 사용했습니다. 이렇게 하면 사용자가 보기에는 1번째, 2번째, 3번째처럼 자연스럽게 출력됩니다.

자주 하는 실수 : 들여쓰기

for문 다음 줄은 반드시 들여쓰기해야 합니다.

아래 코드는 잘못된 예입니다.

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

실행하면 아래와 같은 오류가 납니다.

IndentationError: expected an indented block

Python for문 들여쓰기 오류 예시

 

for i in range(3): 아래에서 실제로 반복할 코드는 한 단계 들여쓰기해야 합니다.

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

Python은 중괄호 {} 대신 들여쓰기로 코드 블록을 구분합니다. 그래서 들여쓰기가 빠지면 Python이 어디까지 반복해야 하는지 알 수 없습니다.

자주 하는 실수 : range 끝값 착각

두 번째로 많이 헷갈리는 부분은 range()의 끝값입니다.

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

이 코드는 1부터 5까지 출력하지 않습니다.

1
2
3
4

끝값 5는 포함되지 않기 때문입니다. 1부터 5까지 출력하고 싶다면 range(1, 6)으로 작성해야 합니다.

정리

for문은 같은 작업을 여러 번 반복할 때 사용하는 기본 문법입니다.

숫자를 반복할 때는 range()를 사용하고, 리스트 안의 값을 하나씩 꺼낼 때도 for문을 사용할 수 있습니다.

1. range(5)는 0부터 4까지 반복한다.
2. range(1, 6)은 1부터 5까지 반복한다.
3. for문 아래에서 실행할 코드는 반드시 들여쓰기한다.

다음 단계에서는 while문을 사용해서 조건이 참인 동안 반복하는 방법을 확인하면 반복문 흐름을 더 잘 이해할 수 있습니다.

같이 보면 좋은 글

  • Python 설치 방법 2026 : Windows에서 파이썬 설치와 PATH 설정
  • VSCode에서 Python 실행하는 방법 : 터미널, Run 버튼, 디버그 차이
  • Python input 사용법 : 문자열과 숫자 입력받기 예제
  • [Python]파이썬 조건문을 활용한 나이, 만나이 계산 출력하기

참고

 

4. More Control Flow Tools

As well as the while statement just introduced, Python uses a few more that we will encounter in this chapter. if Statements: Perhaps the most well-known statement type is the if statement. For exa...

docs.python.org

댓글

💲 추천 글