더북(TheBook)

5.1.2 연속된 숫자를 range()로 간단하게 표현하기

반복문을 사용해 명령어를 5번, 10번 반복하는 프로그램을 작성했습니다. 그런데 이보다 더 많이 반복해야 하는 경우에는 어떻게 할까요? 200번을 반복한다면 1부터 200까지 숫자를 데이터 묶음 안에 넣어야 할까요?

이 문제를 간단하게 해결해 주는 range()라는 명령어가 있습니다. range는 우리말로 ‘범위’를 뜻합니다. 범위는 시작과 끝이 있습니다. 그래서 range() 명령어에도 범위의 시작과 끝을 넣어 range(시작 숫자, 종료 숫자) 형식으로 사용합니다. 다음 코드를 실행해 봅시다.

for a in range(1, 20):
    print(a, '선생님, 다시는 청소를 빼먹지 않겠습니다.')
실행결과
1 선생님, 다시는 청소를 빼먹지 않겠습니다. 
2 선생님, 다시는 청소를 빼먹지 않겠습니다. 
... 
18 선생님, 다시는 청소를 빼먹지 않겠습니다.
19 선생님, 다시는 청소를 빼먹지 않겠습니다.

반성문을 19번 반복해서 출력합니다. 왜 20번이 아닌 19번만 출력할까요? range(시작 숫자, 종료 숫자)에서 종료 숫자는 명령어를 종료하고 반복문을 빠져나가는 숫자를 말합니다. 따라서 20이 되면 range(1, 20)이 종료되므로 실질적인 숫자 범위는 시작 숫자 1부터 19(종료 숫자 - 1)까지입니다. 이를 데이터 묶음으로 표현하면 [1, 2, 3... 18, 19]가 됩니다. 이처럼 20번을 반복하려고 데이터를 일일이 적는 것보다는 range()로 반복할 범위를 넣어 주는 것이 간편합니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.