1. random.randint(a,b): 隨機生成一個a到b之間的一個整數(a<=n<=b)
用於生成一個指定範圍內的整數。其中參數a是下限,參數b是上限,生成的隨機數n:a<=n<=b
2. random.uniform(a,b):隨機生成一個a到b之間的一個浮點數(a<=n<=b)
用於生成一個指定範圍內的隨機浮點數,兩格參數中,其中一個是上限,一個是下限。如果a>b,則生成的隨機數n,即b<=n<=a;如果a>b,則a<=n<=b。
3. numpy.random.uniform(low,high,size):輸出size個low到high之間的數(low<=n<size)左閉右開
從一個均勻分佈[low,high)中隨機採樣,注意定義域是左閉右開,即包含low,不包含high.
- low: 採樣下界,float類型,默認值爲0;
- high: 採樣上界,float類型,默認值爲1;
- size: 輸出樣本數目,爲int或元組(tuple)類型,例如,size=(m,n,k), 則輸出m*n*k個樣本,缺省時輸出1個值。
4. 例:
import random
import numpy as np
a=0; b=7
index = random.randint(a, b) #隨機產生0到7之間的一個整數
print(index)
a=10; b=20
index = random.uniform(a,b) #隨機產生10到20之間的一個浮點數
print(index)
shape=17
cond = np.random.uniform(-0.1, 0.1, shape) #隨機產生-0.1到0.1之間的17個浮點數
print(cond)
#輸出結果:
6
17.53995250541246
[ 0.08522486 -0.00211719 0.08933278 -0.00373567 0.06636708 0.0121164
0.06903136 0.05635546 -0.07668082 0.0551379 -0.07817495 0.03939773
-0.02098632 -0.07445089 0.0423184 -0.03277861 0.09023184]
#輸出結果
4
15.57572931119358
[-0.07759161 0.00917166 0.02625699 -0.09831834 0.05971643 -0.09321461
-0.0589061 0.06328565 -0.05303397 -0.07837874 -0.09519935 0.00481752
0.09597165 0.08807344 -0.06250566 -0.07776539 0.00727126]
參考:
https://www.cnblogs.com/chamie/p/4917820.html python--隨機函數(random,uniform,randint,randrange,shuffle,sample)
https://blog.csdn.net/u013920434/article/details/52507173 numpy.random.uniform介紹