您可以使用隨機(jī)模塊在Python中生成隨機(jī)數(shù)。
Python提供random了可以生成隨機(jī)數(shù)的模塊。
這些是偽隨機(jī)數(shù),因?yàn)樯傻臄?shù)字序列取決于種子。
如果種子值相同,則序列將相同。例如,如果使用2作為播種值,則將始終看到以下序列。
import random random.seed(2) print(random.random()) print(random.random()) print(random.random())
輸出將始終遵循以下順序:
0.9560342718892494 0.9478274870593494 0.05655136772680869
不是那么隨便吧?由于此生成器是完全確定性的,因此不得將其用于加密目的。
這是隨機(jī)模塊中定義的函數(shù)列表,并簡要說明了它們的作用。
功能 | 描述 |
---|---|
seed(a=None, version=2) | 初始化隨機(jī)數(shù)生成器 |
getstate() | 返回捕獲生成器當(dāng)前內(nèi)部狀態(tài)的對(duì)象 |
setstate(state) | 恢復(fù)發(fā)生器的內(nèi)部狀態(tài) |
getrandbits(k) | 返回具有k個(gè)隨機(jī)位的Python整數(shù) |
randrange(start, stop[, step]) | 返回范圍內(nèi)的隨機(jī)整數(shù) |
randint(a, b) | 返回介于a和b之間的隨機(jī)整數(shù) |
choice(seq) | 從非空序列返回一個(gè)隨機(jī)元素 |
shuffle(seq) | 隨機(jī)序列 |
sample(population, k) | 返回從填充序列中選擇的唯一元素的ak長度列表 |
random() | 返回范圍為[0.0,1.0)的下一個(gè)隨機(jī)浮點(diǎn)數(shù) |
uniform(a, b) | 返回介于a和b之間的隨機(jī)浮點(diǎn)數(shù) |
triangular(low, high, mode) | 返回介于低和高之間的隨機(jī)浮點(diǎn)數(shù),并在這些邊界之間指定模式 |
betavariate(alpha, beta) | Beta分布 |
expovariate(lambd) | 指數(shù)分布 |
gammavariate(alpha, beta) | 伽瑪分布 |
gauss(mu, sigma) | 高斯分布 |
lognormvariate(mu, sigma) | 對(duì)數(shù)正態(tài)分布 |
normalvariate(mu, sigma) | 正態(tài)分布 |
vonmisesvariate(mu, kappa) | Vonmises分布 |
paretovariate(alpha) | 帕累托分布 |
weibullvariate(alpha, beta) | 威布爾分布 |