반응형
Python에서 반복문을 사용할 때 가장 많이 사용되는 함수 중 하나가 range()입니다. 숫자의 시퀀스를 생성해주는 이 함수는 for문과 함께 자주 쓰이며, 반복 횟수를 지정할 때 매우 유용합니다. 하지만 range()의 다양한 사용법을 정확히 알지 못하면 예상치 못한 결과가 나올 수 있습니다. 이번 포스팅에서는 range() 함수의 기본 사용법부터 다양한 응용 예제까지 초보자도 쉽게 이해할 수 있도록 정리하겠습니다.
1. range() 함수 기본 개념
1) 정의
range() 함수는 일정 범위의 정수 시퀀스를 생성하는 내장 함수입니다.
2) 기본 형태
range(stop) # 0부터 stop 미만까지
range(start, stop) # start부터 stop 미만까지
range(start, stop, step) # step 간격으로 증가
3) 반환 타입
- Python 3에서는 range 객체를 반환하며, 리스트처럼 반복(iteration)은 가능하지만 실제 리스트는 아님
- 필요시 list()로 형변환 가능
print(range(5)) # 출력: range(0, 5)
print(list(range(5))) # 출력: [0, 1, 2, 3, 4]
2. for문에서의 range() 활용 예제
1) 기본 반복문
for i in range(5):
print(i)
실행 결과 (터미널)
0
1
2
3
4
2) 시작 숫자 지정하기
for i in range(3, 6):
print(i)
실행 결과
3
4
5
3) 증가 간격 설정하기
for i in range(0, 10, 2):
print(i)
실행 결과
0
2
4
6
8
4) 역순 반복하기 (감소)
for i in range(5, 0, -1):
print(i)
실행 결과
5
4
3
2
1
(이미지 필요: range 역순 작동 다이어그램)
3. 실전 응용 예제
1) 리스트의 인덱스를 활용한 반복
fruits = ['apple', 'banana', 'cherry']
for i in range(len(fruits)):
print(i, fruits[i])
실행 결과
0 apple
1 banana
2 cherry
2) 반복 횟수 기반 누적 계산
total = 0
for i in range(1, 6):
total += i
print("총합:", total)
실행 결과
총합: 15
3) 이중 for문과 range()
for i in range(1, 4):
for j in range(1, 4):
print(f"({i},{j})")
실행 결과
(1,1)
(1,2)
(1,3)
(2,1)
...
4. 주의할 점 및 팁
- range(5)는 0부터 시작하며, 5는 포함되지 않음에 유의해야 합니다.
- 음수 step 값을 설정하면 감소 반복도 가능함
- for문 안에서 range(len(리스트))를 사용하는 것보다 enumerate() 함수 활용도 고려해보세요.
for idx, fruit in enumerate(fruits):
print(idx, fruit)
5. 요약 및 마무리
이번 포스팅에서는 Python의 range() 함수 사용법과 다양한 for문 활용 예제를 정리해보았습니다. range(start, stop, step) 형식으로 다양한 반복 조건을 만들 수 있으며, 증가, 감소, 인덱스 활용, 이중 반복문 등 여러 상황에 유용하게 쓰입니다. 특히 초보자라면 range()와 for문의 작동 구조를 직접 실행하며 익히는 것이 중요합니다. 반복 구조를 잘 활용하면 보다 효율적인 파이썬 코드를 작성할 수 있습니다.
6. 관련 글 링크
- 관련 글: Python에서 사용자 정의 함수 만들기 (def, 매개변수, return)
반응형
'파이썬' 카테고리의 다른 글
[Python] 파일 읽기/쓰기 기본 사용법 (open, read, write) (0) | 2025.04.03 |
---|---|
[Python] ValueError 오류가 발생하는 원인과 해결 방법 (0) | 2025.04.03 |
[Python] TypeError: unsupported operand type(s) 오류 해결하기 (0) | 2025.04.01 |
[Python] IndentationError 해결 방법 - 들여쓰기 오류 완전 정복 (0) | 2025.04.01 |
[Python] 리스트와 딕셔너리의 차이점과 사용법 정리하기 (0) | 2025.03.28 |
댓글