본문 바로가기
IT/python

파이썬 random 모듈

by 뉴코딩맨 2023. 5. 31.
파이썬의 random 모듈은 난수를 생성하고 다양한 확률적인 기능을 제공하는 모듈입니다. random 모듈의 기능과 사용법에 대해 알아보고, 다양한 활용 사례를 살펴보겠습니다.
 
 

난수 생성

random 모듈을 사용하여 다양한 형태의 난수를 생성할 수 있습니다. 주요한 함수들은 다음과 같습니다.
 
  • random(): 0과 1 사이의 임의의 부동소수점 수를 반환합니다.
  • randint(a, b): a와 b 사이의 임의의 정수를 반환합니다.
  • uniform(a, b): a와 b 사이의 임의의 부동소수점 수를 반환합니다.
  • choice(seq): 시퀀스에서 임의의 요소를 선택하여 반환합니다.
  • shuffle(seq): 시퀀스의 항목을 무작위로 섞습니다.
 
import random

random_number = random.random()
random_integer = random.randint(1, 10)
random_float = random.uniform(1.0, 5.0)
random_choice = random.choice(['apple', 'banana', 'orange'])
sequence = [1, 2, 3, 4, 5]
random.shuffle(sequence)

 

 

시드 설정

난수를 생성할 때 시드(seed) 값을 설정할 수 있습니다. 시드는 난수 생성 알고리즘에서 사용되는 초기값으로, 동일한 시드를 설정하면 동일한 난수를 얻을 수 있습니다. 시드를 설정하는 방법은 다음과 같습니다.
 
import random

random.seed(42)

 

 

확률 분포

random 모듈은 다양한 확률 분포를 따르는 난수를 생성하는 기능을 제공합니다. 예를 들어, 정규 분포, 이항 분포, 포아송 분포 등을 생성할 수 있습니다.
 
import random

random_number = random.normalvariate(0, 1) # 정규 분포
random_binomial = random.binomial(10, 0.5) # 이항 분포
random_poisson = random.poisson(5) # 포아송 분포
 

활용 사례

random 모듈은 다양한 상황에서 유용하게 사용될 수 있습니다. 몇 가지 예시를 살펴보겠습니다.
  • 게임 개발: 게임에서 난수는 무작위 이벤트나 적의 움직임 등을 구현하는 데 사용될 수 있습니다.
  • 데이터 분석: 데이터 분석 작업에서 난수는 샘플링이나 데이터의 임의의 변형을 수행하는 데 유용합니다.
  • 암호화: 암호화 알고리즘에서 무작위한 키 생성을 위해 난수가 필요할 수 있습니다.
 

마무리

이상으로 파이썬의 random 모듈에 대해 알아보았습니다. random 모듈은 난수 생성과 확률적인 기능을 제공하여 다양한 프로그래밍 문제를 해결하는 데 도움을 줍니다. 다양한 난수 생성 방법과 활용 사례를 익혀서 프로그래밍에 활용해 보세요!

 

 
 

'IT > python' 카테고리의 다른 글

파이썬 pickle 모듈  (0) 2023.06.01
파이썬 os 모듈  (1) 2023.06.01
파이썬 집합(Set)  (0) 2023.05.31
파이썬 딕셔너리(Dictionary)  (0) 2023.05.30
파이썬 튜플(Tuple)  (0) 2023.05.30

댓글