안녕하세요. 오랜만에 인사드립니다. BlockDMask입니다.
사이드 프로젝트하느라, 본업 하느라 시간이 너무 없어서 그동안 블로그를 쓸 시간이 없었습니다.
다시 차근차근 하나하나 작성해보겠습니다.
오늘은 파이썬에서 자주 사용하게 되는 range 함수에 대해서 알아보려고 합니다.
파이썬에서 편하게 코딩을 하는 기준은 range 함수를 알기 전과 알기 후로 나눠질 만큼 range 함수는 매우 손쉽게 리스트를 만들어주는 함수입니다.
<목차>
1. range 함수란?
2. range 함수 예제
1. 파이썬 range 함수
> 함수 설명
range 함수는 연속적인 숫자 객체를 만들어서 반환해주는 함수입니다.
즉, 반복이 가능한 숫자형 이터러블 객체를 반환해주는 함수입니다.
예를 들어,range(10)을 호출하면 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 가 들어있는 반복 가능한 객체를 알아서 만들어서 반환해주는 아주 간편한 함수입니다.
자세히 보면 10 은 포함하지 않는 것 보이시죠?
range 함수는 반복문 for와 함께 사용이 됩니다. 자세한 것을 아래 예제에서 확인하겠습니다. 그리고, range로 만들어진 숫자의 객체가 리스트인 것 같지만 정확히는 range class 형 객체입니다.
> 인수 개수 별 함수의 모양
1. 인수가 한 개일 때 - range(MAX)
0에서부터 MAX - 1까지의 숫자 연속된 객체로 만들어서 반환해주는 함수 (MAX 불포함!)
(0 <= x < MAX)
2. 인수가 두 개일 때 - range(MIN, MAX)
MIN 에서부터 MAX - 1까지의 숫자를 연속된 객체로 만들어서 반환해주는 함수 (MAX 불포함.!)
(MIN <= x < MAX)
3. 인수가 세 개일 때 - range(MIN, MAX, GAP)
MIN에서 MAX -1까지의 숫자를 연속된 객체로 만들어 주는데, 각 숫자들 사이에 GAP 만큼의 차이를 두고 만들어줍니다.
예를 들면 range(0, 10, 2)라고 한다면 0, 2, 4, 6, 8의 숫자 객체가 만들어집니다.
2. 파이썬 range 함수 예제
2-1) range 타입 확인, 기본 동작
1
2
3
4
5
6
7
|
a = range(10)
print(a)
print(type(a))
for val in a:
print(val)
|
cs |
결과 화면
range(10) 함수의 반환 값을 a라는 변수에 집어넣고 테스트를 진행해 보았습니다.
type 함수를 이용해서 확인해본 결과 range로 만든 숫자들의 모임은 range class 객체임을 알 수 있습니다.
그리고 for 반복문을 통해서 for val in range(10) 이런 식으로 사용할 수 있는 걸 알 수 있습니다.
2-2) range 인수 개수에 따른 사용법과 결과
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
# 1. 인수 한개
print('> range(5)')
for val in range(5):
print(val)
# 2. 인수 두개
print('> range(3, 7)')
for val in range(3, 7):
print(val)
# 3. 인수 세개
print('> range(2, 12, 3)')
for val in range(2, 12, 3):
print(val)
|
cs |
결과 화면
이런 식으로 인수 1개, 2개, 3개 별로 다르게 됩니다.
range 함수에서 알아두어야 할 것은 최소 값이 0입니다. 즉, 음수의 숫자를 다루지는 못한다는 점입니다.
이상으로 파이썬에서 숫자형 리스트를 만들어주는 range 함수에 대해서 알아보았습니다.
감사합니다.
'<개인공부> > [Python]' 카테고리의 다른 글
[python] 파이썬 최대공약수, 최소공배수 함수 (gcd, lcm) (0) | 2021.05.13 |
---|---|
[python] 파이썬 올림, 내림 함수 (ceil, floor) (0) | 2021.05.12 |
[python] 파이썬 pow, sqrt 함수 (제곱, 제곱근) (0) | 2021.05.10 |
[python] 파이썬 람다(lambda) 함수 설명 및 예제 (1) | 2021.05.05 |
[python] 파이썬 split 함수 정리 및 에제 (문자열 쪼개기) (4) | 2021.01.21 |
[python] 파이썬 join 함수 정리 및 예제 (문자열 합치기) (3) | 2021.01.14 |
[python] 파이썬 정렬 sorted 함수 정리 및 예제 (3) | 2021.01.11 |
[python] 파이썬 True, False 불(bool) 자료형 사용법 및 예제 총정리 (2) | 2021.01.08 |