Python 生成一組隨機數列表(有放回)

2021-09-25 10:50:21 字數 2464 閱讀 1028

一. 最直接的方式:用numpy.random模組來生成隨機數組

1、np.random.rand 用於生成[0.0, 1.0)之間的隨機浮點數, 當沒有引數時,返回乙個隨機浮點數,當有乙個引數時,返回該引數長度大小的一維隨機浮點數陣列,引數建議是整數型,因為未來版本的numpy可能不支援非整形引數。

import numpy as np

>>> np.random.rand(10)

array([ 0.89103033, 0.60550521, 0.13856488, 0.57468244, 0.370697 ,

0.31823162, 0.58358377, 0.97177935, 0.76400592, 0.11269547])

2、np.random.randn該函式返回乙個樣本,具有標準正態分佈。

>>> np.random.randn(10)

array([-0.42625455, -1.86248727, 0.96323332, -0.32809754, -0.79697695,

-0.07145189, 2.89728643, 2.32095237, 1.12925633, -0.39210317])

3、np.random.randint(low[, high, size]) 返回隨機的整數,位於半開區間 [low, high)。

>>> np.random.randint(10,size=10)

array([4, 1, 4, 3, 8, 2, 8, 5, 8, 9])

4、random_integers(low[, high, size]) 返回隨機的整數,位於閉區間 [low, high]。

>>> np.random.random_integers(5)

2

5、 np.random.shuffle(x) 類似洗牌,打亂順序;np.random.permutation(x)返回乙個隨機排列

>>> arr = np.arange(10)

>>> np.random.shuffle(arr)

>>> arr

[1 7 5 2 9 4 3 6 0 8]

>>>> np.random.permutation(10)

array([1, 7, 4, 3, 0, 9, 2, 5, 8, 6])

二. 用random模組自己構造

1、random.randint(low, hight) -> 返回乙個位於[low,hight]之間的整數

該函式接受兩個引數,這兩個引數必須是整數(或者小數字是0的浮點數),並且第乙個引數必須不大於第二個引數

>>> import random

>>> random.randint(1,10)

6>>> random.randint(1.0, 10.0)

1

2、random.random() -> 不接受引數,返回乙個[0.0, 1.0)之間的浮點數

>>> random.random()

0.5885821552646049

3、random.uniform(val1, val2) -> 接受兩個數字引數,返回兩個數字區間的乙個浮點數,不要求val1小於等於val2

>>> random.uniform(1,5.0)

4.485403087612088

>>> random.uniform(9.9, 2)

5.189511116007191

4、random.randrange(start, stop, step) -> 返回以start開始,stop結束,step為步長的列表中的隨機整數,同樣,三個引數均為整數(或者小數字為0),若start大於stop時 ,setp必須為負數.step不能是0.

>>> random.randrange(1, 100, 2)  #返回[1,100]之間的奇數

19>>> random.ranrange(100, 1, -2) #返回[100,1]之間的偶數

2

5、生成隨機數組 

方法,使用random.ranident,構造乙個列表即可:

import random

def random_list(start,stop,length):

if length>=0:

length=int(length)

start, stop = (int(start), int(stop)) if start <= stop else (int(stop), int(start))

random_list =

for i in range(length):

return random_list

Python 生成一組隨機數列表

一.最直接的方式 用numpy.random模組來生成隨機數組 1 np.random.rand 用於生成 0.0,1.0 之間的隨機浮點數,當沒有引數時,返回乙個隨機浮點數,當有乙個引數時,返回該引數長度大小的一維隨機浮點數陣列,引數建議是整數型,因為未來版本的numpy可能不支援非整形引數。im...

python程式設計 隨機數列表生成座標

場景 1.使用乙個類生成隨機數 2.可以自定義隨機數的個數和隨機數的範圍 3.將生成的隨機數隨機組合生成座標然後列印 import random class int number 可以設定生成數字的個數,可設定生成的數值的範圍。執行時還可以調整每批生成數字的個數 test list def init...

C 庫研究筆記 生成一組隨機數

當試圖用 srand time 0 rand 生成一組隨機數時發現,生成的數字很多都是 一樣 的 經過測試 srand seed rand 生成隨機數,當seed一樣時,生成的隨機數相同。所以上述 一樣 的問題應該出在time 0 所以最後採用的方式是 sleep 高精度計時,srand getti...