더북(TheBook)

이럴 때 사용하는 명령어는 random()과 앞에서 배운 range()를 합친 randrange(시작 숫자, 종료 숫자)입니다. randrange() 명령어는 range() 명령어와 매우 비슷합니다. 시작 숫자와 종료 숫자가 있어 범위 내에서 무작위 숫자를 추출합니다. 또한, 종료 숫자는 결괏값에 포함되지 않습니다. 따라서 random.randrange(1, 10)을 하면 1부터 9까지의 숫자 중 하나를 무작위로 추출합니다. 무작위 수가 나오므로 실행결과는 생략합니다.

import random
print(random.randrange(1, 10))

또한, range()에서 간격을 설정할 수 있던 것처럼 randrange()도 간격을 설정할 수 있습니다. 간격을 2로 설정하고 여러 번 재실행해 보세요. 어떤 숫자가 나오나요?

import random
print(random.randrange(1, 10, 2))

random.randrange(1, 10, 2)는 1에서 9까지의 숫자 중 1부터 간격이 2인 숫자를 무작위로 뽑으라는 의미입니다. 1부터 간격이 2인 숫자는 1, 3, 5, 7, 9로 모두 홀수죠. 따라서 항상 홀수가 나옵니다. 간격을 다른 숫자로도 바꿔 테스트해 보세요.

random.randrange()로도 무작위 정수를 얻을 수 있지만, random 라이브러리에는 조금 더 편리한 randint()가 있습니다. random()int()가 합쳐진 randint(시작 숫자, 종료 숫자)는 시작 숫자와 종료 숫자 사이에서 무작위로 정수 하나를 돌려줍니다. 단, randrange()와 달리 종료 숫자도 포함합니다. 코드로 확인해 봅시다.

import random
print(random.randint(1, 10))
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.