python中的random模組

2021-08-02 22:05:54 字數 2177 閱讀 2525

random模組通常用於生成隨機數,其中幾個常用函式比較重要,需要我們牢記。

一、random.random

該函式用於生成0—1之間的隨機數。

print random.random()

#顯示結果為0.934417199201

print random.random()

#顯示結果為0.964504501517

二、random.randint(a, b)

該函式用於生成區間[a,b]中的隨機數n,a<=n<=b。a可以等於b,但不能大於b。

print random.randint(1,20)

#顯示結果為17

print random.randint(1,1)

#永遠顯示結果為1

print random.randint(20,20)

#永遠顯示結果為20

print random.randint(20,1)

#報錯

三、random.uniform(a,b)

該函式可與第二個函式進行對比,它生成的是區間內的隨機浮點數。但對a、b的限制有些許不同。先來看乙個例子。

print random.uniform(20,1)

#生成2.39971793852

如果a>b,則在(b,a)區間內生成隨機數。無論輸入的a、b大小如何,它都能調整到乙個正確的區間,並從中隨機生成乙個浮點數。

print random.uniform(1,20)

#顯示結果為5.12122533938

print random.uniform(1,1)

#顯示結果為1.0

print random.uniform(20,20)

#顯示結果為20.0

四、random.choice(sequence)

該函式可從sequence中獲取乙個隨機元素。需要注意的是sequence並非指特定型別,而是泛指一系列型別,可以是list、tuple,也可以是字串。

print random.choice([1,2,3,4,5,6,7,8,9,10])

#顯示結果為6

print random.choice((1,2,3,4,5,6))

#顯示結果為3

print random.choice("123456789")

#顯示結果為6

五、random.randrange([start], stop, [step])

該函式是在區間([start], stop)內(若沒有start則預設為0),按[step]遞增的集合中(若沒有step則預設為1)選取乙個隨機數。

print random.randrange(3,12,4)

#顯示結果為7

#相當於在[3,7,11]中選取乙個隨機數

六、random.sample(sequence,k)

該函式可以從指定序列sequence中隨機獲取長度為k的片段。

print random.sample([1,2,4,6,7,80],3)

#顯示結果為[1,80,6]

#顯然是從中隨機選取3個元素重新組成片段。

七、random.seed([x])
該函式的返回值為none。它可以讓生成的隨機數不隨機。
random.seed(3)

print random.random()

#顯示結果為0.237964627092

random.seed(3)

print random.random()

#顯示結果為0.237964627092

當在呼叫其它生成隨機數的函式之前,使用相同的seed,可以獲得完全相同的隨機數。

八、random.shuffle()

該函式可以將列表中的元素打亂

p = [1,2,3,4]

random.shuffle(p)

print p

#顯示結果為[3,1,4,2]

python中numpy的random模組

numpy.random 1.rand d0,d1,dn 產生 0,1 的浮點隨機數,括號裡面的引數可以指定產生陣列的形狀 例如 np.random.rand 3,2 則產生 3 2的陣列,裡面的數是0 1的浮點隨機數 2.randn d0,d1,dn 產生標準正太分布隨機數,引數含義與rand相同...

python中生成隨機整數(random模組)

原文 1 從乙個序列中隨機選取乙個元素返回 random.choice sep 2 用於將乙個列表中的元素打亂 random.shuffle sep 3 在sep列表中隨機選取k個元素返回 random.sample seq,k 4 隨機返回a到b之間的乙個整數 random.randint a,b...

Python中的random模組

python中的random模組用於生成隨機數。下面介紹一下random模組中最常用的幾個函式。random.random 用於生成乙個0到1的隨機符點數 0 n 1.0 random.uniform的函式原型為 random.uniform a,b 用於生成乙個指定範圍內的隨機符點數,兩個引數其中...