일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- SQL
- Kotlin
- math
- PANDAS
- list
- Redshift
- google apps script
- Mac
- dataframe
- numpy
- PostgreSQL
- GIT
- Github
- Excel
- Google Excel
- string
- PySpark
- 파이썬
- django
- Java
- matplotlib
- Tkinter
- Python
- hive
- Apache
- c#
- array
- Google Spreadsheet
- gas
- Today
- Total
달나라 노트
Python Basic : range() 본문
range()
range()는 주로 for loop와 함께 쓰이는 함수입니다.어떠한 기능을 가지는지 한번 봅시다.
x = list(range(5))
print(x)
print(type(x))
- Output
[0, 1, 2, 3, 4]
<class 'list'>
range 함수는 인자로서 숫자를 받습니다.위 예시에선 range 함수의 인자로 5라는 숫자가 주어졌습니다.
5라는 숫자를 받은 range함수는 0부터 시작하여 4(=5-1)까지 1씩 증가하는 숫자들을 인자로서 가지게되는 list를 만들어낸다고 생각하면 됩니다.
for i in range(5):
print(i)
- Output
0
1
2
3
4
range는 어떤 숫자를 받아 list를 생성하기 때문에 위 예시처럼 for loop와 함께 사용할 수 있는 것이죠.
x = list(range(2, 5))
print(x)
print(type(x))
- Output
[2, 3, 4]
<class 'list'>
또한 range는 한 번에 2개의 숫자를 인자로서 받을 수도 있습니다.
이 경우 첫 번째 숫자는 생성할 list의 시작 숫자이며 두 번째 숫자에서 1을 뺀 숫자가 list의 마지막 요소가 됩니다.
위 예시의 range(2, 5)는 2부터 시작하며 4(=5-1)까지의 정수들을 인자로서 가지는 list를 생성합니다.
x = list(range(2, 10, 2))
print(x)
print(type(x))
x = list(range(10, 2, -2))
print(x)
print(type(x))
- Output
[2, 4, 6, 8]
[10, 8, 6, 4]
<class 'list'>
range는 한 번에 3개의 숫자를 인자로서 받을 수도 있습니다.
이 경우 각 인자별 의미는 다음과 같습니다.
첫 번째 숫자 -> 시작값
두 번째 숫자 -> 끝값
세 번째 숫자 -> 증감
위 예시에서 range(2, 10, 2)는 2에서 시작하여 숫자를 2씩 증가시켜 list를 만들되 마지막 값은 9보다 작은 숫자들을 list로 반환합니다.
range(10, 2, -2)는 10부터 시작하여 숫자를 2씩 감소시켜(-2) list를 만들되 마지막 값은 3보다 큰 숫자들을 list로 반환합니다.
두 번째 예시에서 주의할 점은 끝값이 2로 적혀있다는 것입니다.
range의 증감폭이 -2이므로 숫자는 점점 감소할것이고, 이때 마지막 값이 2라는 것은 1(=2-1)이 아니라 10부터 시작하여 감소할 때 2보다 한칸 전 값인 3이 되어야합니다.
즉, 단순히 마지막 값에서 -1을 빼는게 아니라 하나 전 값을 봐야합니다.
10 -> 9 -> 8 -> 7 -> 6 -> 5 -> 4 -> 3(마지막 값의 한칸 전) -> 2(마지막 값)
'Python > Python Basic' 카테고리의 다른 글
Python Basic : strip, lstrip, rstrip (문자열 가장 양쪽의 공백 제거하기. 문자열 가장 양쪽에 있는 특정 문자 제거하기) (0) | 2021.01.20 |
---|---|
Python Basic : filter() (0) | 2020.12.23 |
Python Basic : enumerate() (0) | 2020.12.09 |
Python Basic : class 상속과 super() (0) | 2020.11.29 |
Python Basic : assert (True, False 확인하고 False인 경우 코드 중단하기) (0) | 2020.11.23 |