python-random庫函數

Random庫

random庫是使用隨機數的Python標準庫

僞隨機數:採用梅森旋轉算法可以生成僞隨機序列中元素

生成隨機數:

給定隨機數種子-》採用梅森旋轉算法-》隨機序列

基本隨機函數:seed(),random()

擴展隨機函數:randint(),randrange(),getrandbit(),ubiform(),choice(),shuffle()

seed(a=none)

描述:初始化給定的隨機數種子,默認爲當前系統的時間

random.seed(10)產生種子10對應的序列

random()

描述:生成一個[0.0,1.0)之間的隨機小數

random.random()

0.9469572481012325

可以利用seed來控制random生成的隨機數

>>> import random
>>> random.random()
0.9469572481012325
>>> random.random()
0.2735506429592328
>>> random.seed(10)
>>> random.random()
0.5714025946899135
>>> random.seed(10)
>>> random.random()
0.5714025946899135
>>> random.seed(7)
>>> random.random()
0.32383276483316237
>>> random.seed(7)
>>> random.random()
0.32383276483316237

randint(a,b)

生成一個[a,b]之間的整數

random.randint(10,100)

64

randrange(m,n[,k])

生成一個[m,n)之間以k爲步長的隨機整數

randint.randrange(10,100,10)

80

getrandbits(k)

生成一個k比特長度的隨機整數

random.getrandbits(2)
0或1或2或3

uniform(a,b)

生成[a,b]之間的隨機小數

random.uniform(4,6)
4.429396361671324

choice(seq)

從序列seq中隨機選取一個元素

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

shuffle(seq)

將序列seq中元素隨機排列,然後返回打亂後的序列

>>>s = [1,2,15,6,4,3,3,6,3,3]
>>>random.shuffle(s)
>>>s
[4, 15, 3, 3, 6, 2, 3, 3, 1, 6]
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章