Python

[Python] random 모듈 (랜덤)

juhwan 2023. 10. 4. 01:47

모듈이란

함수나 변수, 클래스 등을 모아놓은 파일이다.

random 함수를 사용하기 위해선 초기 작업이 필요하다.

파이썬에는 random() 함수가 없기 때문에 random 모듈을 가져와서 사용해야 한다.

import random  # random 모듈 사용하기 위해 정의

random 함수 사용

print(random.random())
# 모듈을 사용해서 random()함수 호출(기본 0~1 사이 실수를 반환)
#결과: 0.6847956453663325

정수형으로 random함수 호출

print(random.randint(1, 10))
# 리스트, range() 함수와 다르게 뒷 자리 숫자 10을 포함하여 출력된다(범위 1부터 10까지)
결과: 5

random() 사용하여 구구단 만들기

score = 0 # 점수 변수
for _ in range(5):
    a = random.randint(2, 9) # 2단부터 9단까지
    b = random.randint(1, 9) # 1부터 9까지
    result = int(input(f'{a}*{b}=?')) # 사용자에게 보여줄 문구
    if a * b == result: # 사용자 입력값과 정답 비교
        score += 20 
        print("정답입니다. +20점")
    else:
        print("틀렸습니다.")
print(f'최종 점수는 {score}점 입니다!')
# 총 5회 반복하며 끝나면 획득점수 출력

random()함수는 실제 랜덤이 아니라 seed()함수의 나노초 시간을 보고 만들어진다

# seed에 임의에 숫자를 넣으면 값이 고정되어 똑같은 결과만 똑같은 결과만 출력한다.
random.seed(3) 
num = random.randint(1, 100)
print(num)
#결과: 31
# seed()함수에 정수 3을 넣어두면 결과가 31로 고정된다