English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Python에서 임의 수를 생성할 수 있는 랜덤 모듈을 사용할 수 있습니다.
Python은 임의 수를 생성할 수 있는 모듈을 제공합니다.
이들은 시드에 따라 생성되는 숫자 시퀀스 때문에 가짜 임의 수입니다.
시드 값이 같으면 시퀀스도 같습니다. 예를 들어, 사용하면2시드 값으로 사용되면 항상 다음과 같은 시퀀스를 볼 수 있습니다。
import random random.seed(2) print(random.random()) print(random.random()) print(random.random())
출력은 항상 다음 순서로 따릅니다:
0.9560342718892494 0.9478274870593494 0.05655136772680869
그렇게 무작위적이지 않네요?이 생성기는 완전히 결정적이므로 암호화 목적에 사용하지 마세요.
이는 랜덤 모듈에서 정의된 함수 목록이며, 간단히 그 기능을 설명합니다.
기능 | 설명 |
---|---|
seed(a=None, version=2) | 랜덤 수 생성기를 초기화합니다 |
getstate() | 생성기의 현재 내부 상태를 포함한 객체를 반환합니다 |
setstate(state) | 기본 상태를 복원합니다 |
getrandbits(k) | k개 랜덤 비트를 가진 파이썬 정수를 반환합니다 |
randrange(start, stop[, step]) | 범위 내의 랜덤 정수를 반환합니다 |
randint(a, b) | a와 b 사이의 랜덤 정수를 반환합니다 |
choice(seq) | 비어있지 않은 시퀀스에서 랜덤 요소를 반환합니다 |
shuffle(seq) | 랜덤 시퀀스 |
sample(population, k) | 채우기 시퀀스에서 선택된 독특한 요소의 ak 길이의 리스트를 반환합니다 |
random() | 범위 [0.0,1.0)의 다음 랜덤 플로팅 숫자 |
uniform(a, b) | a와 b 사이의 랜덤 플로팅 숫자를 반환합니다 |
triangular(low, high, mode) | 하위와 높은 사이의 랜덤 플로팅 숫자를 반환하고, 이 경계 사이에서 패턴을 지정합니다 |
betavariate(alpha, beta) | 베타 분포 |
expovariate(lambd) | 지수 분포 |
gammavariate(alpha, beta) | 가마 분포 |
gauss(mu, sigma) | 고스 분포 |
lognormvariate(mu, sigma) | 로그 정态 분포 |
normalvariate(mu, sigma) | 정态 분포 |
vonmisesvariate(mu, kappa) | Vonmises 분포 |
paretovariate(alpha) | 파레토 분포 |
weibullvariate(alpha, beta) | 위버럴 분포 |