* range는 ‘범위’를 뜻하는 단어
파이썬에서 range는 반복할 ‘범위’를 지정하는 명령어.
range(5), range(10)처럼 반복 범위를 지정하면 각각 다섯 번, 열 번 실행되는 것을 확인하였습니다.
예)
>>> list(range(5))
[0, 1, 2, 3, 4]
>>> list(range(0, 5))
[0, 1, 2, 3, 4]
>>> list(range(1, 11))
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> list(range(1, 4))
[1, 2, 3]
>>>
* 먼저 list(range(5))를 보겠습니다.
결과를 보면 알 수 있듯이 range(5)는 0, 1, 2, 3, 4로 값을 다섯 개 가집니다. 정확히 말하면 for x in range(5):는 ‘변수 x의 값을 차례대로 0, 1, 2, 3, 4로 바꾸면서 반복 블록을 실행하라’는 뜻입니다.
* 두 번째로 range(0, 5)를 알아보겠습니다. range(a, b)의 값은 a에서 시작해서 b 바로 앞의 값까지 1씩 늘리면서 반복하는 것을 의미합니다. 따라서 range(0, 5)는 0부터 시작해서 5 바로 앞의 값까지 반복하라는 뜻이므로 0, 1, 2, 3, 4를 출력합니다. 결과적으로 첫 번째 줄의 range(5)와 결과가 같습니다.
* 세 번째 range(1, 11)은 1에서 시작해서 11 바로 앞(10)까지를 반복하라는 의미이므로 1, 2, 3, 4, 5, 6, 7, 8, 9, 10을 출력합니다.
* 네 번째 range(1, 4)도 1에서 4 바로 앞(3)까지 반복하라는 의미이므로 1, 2, 3을 출력합니다.
예)
print("[0-4]")
for x in range(5): # range(5)로 0, 1, 2, 3, 4까지 다섯 번 반복합니다.
print(x) # 변수 x 값을 출력합니다.
print("[1-10]")
for x in range(1, 11): # 1, 2, ..., 10까지 열 번 반복합니다(11은 제외).
print(x) # 변수 x 값을 출력합니다.
※ range 명령어를 쓸 때 두 가지는 꼭 기억하세요!
① range(5) : 0부터 시작해서 4까지 다섯 번 반복한다(5는 제외한다).
② range(1, 11) : 1부터 시작해서 10까지 열 번 반복한다(11은 제외한다).