新聞中心
Python random 模塊
Python random 模塊主要用于生成隨機(jī)數(shù)。

創(chuàng)新互聯(lián)主營(yíng)宣恩網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,重慶App定制開(kāi)發(fā),宣恩h5小程序開(kāi)發(fā)搭建,宣恩網(wǎng)站營(yíng)銷推廣歡迎宣恩等地區(qū)企業(yè)咨詢
random 模塊實(shí)現(xiàn)了各種分布的偽隨機(jī)數(shù)生成器。
要使用 random 函數(shù)必須先導(dǎo)入:
import random
查看 random 模塊中的內(nèi)容:
實(shí)例
>>>
import
random
>>>
dir
(
random
)
[
'BPF'
,
'LOG4'
,
'NV_MAGICCONST'
,
'RECIP_BPF'
,
'Random'
,
'SG_MAGICCONST'
,
'SystemRandom'
,
'TWOPI'
,
'_Sequence'
,
'_Set'
,
'__all__'
,
'__builtins__'
,
'__cached__'
,
'__doc__'
,
'__file__'
,
'__loader__'
,
'__name__'
,
'__package__'
,
'__spec__'
,
'_accumulate'
,
'_acos'
,
'_bisect'
,
'_ceil'
,
'_cos'
,
'_e'
,
'_exp'
,
'_floor'
,
'_inst'
,
'_log'
,
'_os'
,
'_pi'
,
'_random'
,
'_repeat'
,
'_sha512'
,
'_sin'
,
'_sqrt'
,
'_test'
,
'_test_generator'
,
'_urandom'
,
'_warn'
,
'betavariate'
,
'choice'
,
'choices'
,
'expovariate'
,
'gammavariate'
,
'gauss'
,
'getrandbits'
,
'getstate'
,
'lognormvariate'
,
'normalvariate'
,
'paretovariate'
,
'randbytes'
,
'randint'
,
'random'
,
'randrange'
,
'sample'
,
'seed'
,
'setstate'
,
'shuffle'
,
'triangular'
,
'uniform'
,
'vonmisesvariate'
,
'weibullvariate'
]
接下來(lái)我們使用 方法返回一個(gè)隨機(jī)數(shù),它在 [0,1) 范圍內(nèi),包含 0 但不包含 1。
實(shí)例
# 導(dǎo)入 random 包
import
random
# 生成隨機(jī)數(shù)
print
(
random.
random
(
)
)
以上實(shí)例輸出結(jié)果為:
0.4784904215869241
方法改變隨機(jī)數(shù)生成器的種子,可以在調(diào)用其他隨機(jī)模塊函數(shù)之前調(diào)用此函數(shù)。
實(shí)例
#!/usr/bin/python3
import
random
random.
seed
(
)
print
(
"使用默認(rèn)種子生成隨機(jī)數(shù):"
,
random.
random
(
)
)
print
(
"使用默認(rèn)種子生成隨機(jī)數(shù):"
,
random.
random
(
)
)
random.
seed
(
10
)
print
(
"使用整數(shù) 10 種子生成隨機(jī)數(shù):"
,
random.
random
(
)
)
random.
seed
(
10
)
print
(
"使用整數(shù) 10 種子生成隨機(jī)數(shù):"
,
random.
random
(
)
)
random.
seed
(
"hello"
,
2
)
print
(
"使用字符串種子生成隨機(jī)數(shù):"
,
random.
random
(
)
)
以上實(shí)例運(yùn)行后輸出結(jié)果為:
使用默認(rèn)種子生成隨機(jī)數(shù): 0.7908102856355441 使用默認(rèn)種子生成隨機(jī)數(shù): 0.81038961519195 使用整數(shù) 10 種子生成隨機(jī)數(shù): 0.5714025946899135 使用整數(shù) 10 種子生成隨機(jī)數(shù): 0.5714025946899135 使用字符串種子生成隨機(jī)數(shù): 0.3537754404730722
random 模塊方法
random 模塊方法如下:
| 方法 | 描述 |
|---|---|
| 初始化隨機(jī)數(shù)生成器 | |
| getstate() | 返回捕獲生成器當(dāng)前內(nèi)部狀態(tài)的對(duì)象。 |
| setstate() | state 應(yīng)該是從之前調(diào)用 getstate() 獲得的,并且 setstate() 將生成器的內(nèi)部狀態(tài)恢復(fù)到 getstate() 被調(diào)用時(shí)的狀態(tài)。 |
| getrandbits(k) | 返回具有 k 個(gè)隨機(jī)比特位的非負(fù) Python 整數(shù)。 此方法隨 MersenneTwister 生成器一起提供,其他一些生成器也可能將其作為 API 的可選部分提供。 在可能的情況下,getrandbits() 會(huì)啟用 randrange() 來(lái)處理任意大的區(qū)間。 |
| 從 range(start, stop, step) 返回一個(gè)隨機(jī)選擇的元素。 | |
| 返回隨機(jī)整數(shù) N 滿足 a <= N <= b。 | |
| 從非空序列 seq 返回一個(gè)隨機(jī)元素。 如果 seq 為空,則引發(fā) IndexError。 | |
| choices(population, weights=None, *, cum_weights=None, k=1) | 從 population 中選擇替換,返回大小為 k 的元素列表。 如果 population 為空,則引發(fā) IndexError。 |
| 將序列 x 隨機(jī)打亂位置。 | |
| sample(population, k, *, counts=None) | 返回從總體序列或集合中選擇的唯一元素的 k 長(zhǎng)度列表。 用于無(wú)重復(fù)的隨機(jī)抽樣。 |
| 返回 [0.0, 1.0) 范圍內(nèi)的下一個(gè)隨機(jī)浮點(diǎn)數(shù)。 | |
| 返回一個(gè)隨機(jī)浮點(diǎn)數(shù) N ,當(dāng) a <= b 時(shí) a <= N <= b ,當(dāng) b < a 時(shí) b <= N <= a 。 | |
| triangular(low, high, mode) | 返回一個(gè)隨機(jī)浮點(diǎn)數(shù) N ,使得 low <= N <= high 并在這些邊界之間使用指定的 mode 。 low 和 high 邊界默認(rèn)為零和一。 mode 參數(shù)默認(rèn)為邊界之間的中點(diǎn),給出對(duì)稱分布。 |
| betavariate(alpha, beta) | Beta 分布。 參數(shù)的條件是 alpha > 0 和 beta > 0。 返回值的范圍介于 0 和 1 之間。 |
| expovariate(lambd) | 指數(shù)分布。 lambd 是 1.0 除以所需的平均值,它應(yīng)該是非零的。 |
| gammavariate() | Gamma 分布( 不是伽馬函數(shù)) 參數(shù)的條件是 alpha > 0 和 beta > 0。 |
| gauss(mu, sigma) | 正態(tài)分布,也稱高斯分布。 mu 為平均值,而 sigma 為標(biāo)準(zhǔn)差。 此函數(shù)要稍快于下面所定義的 normalvariate() 函數(shù)。 |
| lognormvariate(mu, sigma) | 對(duì)數(shù)正態(tài)分布。 如果你采用這個(gè)分布的自然對(duì)數(shù),你將得到一個(gè)正態(tài)分布,平均值為 mu 和標(biāo)準(zhǔn)差為 sigma 。 mu 可以是任何值,sigma 必須大于零。 |
| normalvariate(mu, sigma) | 正態(tài)分布。 mu 是平均值,sigma 是標(biāo)準(zhǔn)差。 |
| vonmisesvariate(mu, kappa) | 馮·米塞斯分布。 mu 是平均角度,以弧度表示,介于0和 2*pi 之間,kappa 是濃度參數(shù),必須大于或等于零。 如果 kappa 等于零,則該分布在 0 到 2*pi 的范圍內(nèi)減小到均勻的隨機(jī)角度。 |
| paretovariate(alpha) | 帕累托分布。 alpha 是形狀參數(shù)。 |
| weibullvariate(alpha, beta) | 威布爾分布。 alpha 是比例參數(shù),beta 是形狀參數(shù)。 |
新聞標(biāo)題:Pythonrandom模塊
文章位置:http://m.fisionsoft.com.cn/article/dpjiosi.html


咨詢
建站咨詢
