[정보처리기사] python의 range의 범위에 대해 알아보자
2025. 10. 17. 13:00ㆍ정보처리기사
728x90
반응형
안녕하세요. 진득코딩입니다.
이번 시간에는 저번 시간에 이어서 파이썬의 연속된 숫자들의 시퀀스를 생성할 때 사용하는 range()에 대해 알아보도록 하겠습니다.
range()
- 파이썬에서 range()는 연속된 숫자들의 시퀀스를 생성할 때 사용됩니다.
- 주로 반복문(for)과 함께 사용되며, 간결하면서도 강력한 기능을 제공합니다.
- range는 실제 리스트를 바로 만드는 것이 아니라, 필요한 순간에 값을 하나씩 생성하는 이터러블 객체이기 때문에 메모리를 효율적으로 사용할 수 있습니다.
코드로 알아보는 range()
range의 활용
# 1. range 객체를 변수로 저장하기
r = range(1, 21) # 1부터 20까지 (20은 포함되지 않음)
print("range 객체 r:", r)
# 2. range로 리스트 만들기
numbers = list(r)
print("list(r):", numbers)
# 3. append()로 새로운 리스트 구성하기
squares = []
for i in r:
squares.append(i ** 2)
print("1~20 제곱값:", squares)
# 4. range를 활용해 짝수 리스트 만들기
odds = []
for i in range(1, 21):
if i % 2 == 1:
odds.append(i)
print("1~20 홀수:", odds)
# 5. len()으로 길이 확인하기
print("len(numbers):", len(numbers)) # 20개
print("len(odds):", len(odds)) # 10개
# 6. 다른 예시 — step을 사용한 range
by_three = list(range(0, 21, 3))
print("3씩 증가하는 숫자:", by_three)
range() 같은 이터러블 객체뿐만 아니라 언어의 개념을 이해할 때는 코드를 통해 살펴보는 것이 가장 효과적이라고 생각합니다. 해당 코드를 분석하면서 range()가 어떻게 동작하는지 살펴보고 range()의 특징을 알아보도록 하겠습니다.
range를 변수로 사용하기
r = range(1, 21)
- range()는 range(start, stop) 형식으로 사용하며, 위 예제에서는 1부터 시작해 21 직전까지의 숫자를 생성합니다.
- range는 이터러블 객체로서 반복문에서 직접 사용할 수 있습니다.
- 리스트로 변환하지 않아도, for문에서 순회가 가능합니다.
예시 :
for i in r:
print(i, end=' ')
결과 :
1 2 3 ... 20
마지막 숫자는 포함하지 않는 range
- range(1, 21)은 1부터 20까지만 포함합니다. 즉, stop 인자는 항상 제외됩니다.
- 이 특성을 활용하면 리스트의 인덱스(0부터 시작) 제어가 훨씬 직관적이게 됩니다.
예시:
# 0~4까지만 출력
for i in range(5):
print(i)
결과:
0
1
2
3
4
append()와 함께 사용하기
squares = []
for i in r:
squares.append(i ** 2)
- append()는 리스트의 마지막에 새로운 원소를 추가하는 함수입니다.
- range로 반복하면서 각 원소의 연산 결과를 누적할 때 유용합니다.
응용 예시
cubes = []
for n in range(1, 6):
cubes.append(n ** 3)
print(cubes) # [1, 8, 27, 64, 125]
len()으로 리스트 크기 확인하기
print("len(numbers):", len(numbers))
- len() 함수는 리스트, 문자열 등 컨테이너의 길이(원소 개수)를 반환합니다.
- range(1, 21)은 총 20개의 값을 만들기 때문에 len(number)는 20이 됩니다.
예시:
r = range(5, 10)
print(len(list(r))) # 5

- range는 메모리를 절양하는 이터러블 객체입니다.
- stop 인자는 포함되지 않으며, range(a, b)는 a부터 b-1까지입니다.
- append()로 데이터를 리스트에 저장하고, len()으로 개수를 쉽게 확인할 수 있습니다.
지금까지 파이썬의 range에 대해서 살펴보았습니다.
range는 단순히 반복문에서 사용하는 도구를 넘어, 규칙적인 숫자 시퀀스를 효율적으로 다룰 수 있는 핵심 함수입니다.
특히 stop 인자가 포함되지 않는다는 점만 확실히 이해하고 있다면, 정처기 시험에서 쉽게 풀 수 있는 문제를 만나는 행운이 뒤따를 거라고 생각합니다.
오늘 살펴본 range의 마지막 숫자는 포함되지 않는다는 사실 정도는 꼭 챙겨가시길 바랍니다.
이번 포스팅은 여기까지입니다. 끝까지 봐주셔서 감사합니다.😀
728x90
반응형
LIST
'정보처리기사' 카테고리의 다른 글
| [정보처리기사] Python의 문자열 슬라이싱에 대해 알아보자 (0) | 2025.10.19 |
|---|---|
| [정보처리기사] Python의 built-in Types에 대해 알아보자 (0) | 2025.10.18 |
| [정보처리기사] Python의 set과 list에 대해 알아보자 (0) | 2025.10.15 |
| [정보처리기사] 개발 단계에 따른 애플리케이션 테스트에 대해 알아보자 (0) | 2025.02.23 |
| [정보처리기사] 디자인 패턴에 대해 알아보자 (0) | 2025.02.22 |