1. 程式人生 > >python之random

python之random

如果你對在Python生成隨機數與random模組中最常用的幾個函式的關係與不懂之處,下面的文章就是對Python生成隨機數與random模組中最常用的幾個函式的關係,希望你會有所收穫,以下就是這篇文章的介紹。

random.random() 生成隨機數

In [33]: import random
In [34]: random.random()  #生成0-1的隨機浮點數
Out[34]: 0.873906344333306

In [35]: random.random()
Out[35]: 0.647577101735724

random.uniform(a,b) 生成一個指定範圍內的隨機符點數,兩個引數不區分大小,其中一個是上限,一個是下限。

In [36]: random.uniform(10,20)  #10-20區間內隨機浮點數
Out[36]: 12.68453923228301

In [37]: random.uniform(20,10)  #10-20區間內隨機浮點數
Out[37]: 14.065908937870898

random.randint(a,b)用於生成一個指定範圍內的整數。其中引數a是下限,引數b是上限,Python生成隨機數

In [42]: random.randint(10,20)  #10-20區間內
Out[42]: 18

In [43]: random.randint(20,10)  #20-10會報錯

In [44]: random.randint(20,20)  #只能生成20
Out[44]: 20


random.randrange()從指定範圍內,按指定基數遞增的集合中 隨機取值。

#random.randrange([start],stop[, step]),結果相當於從[10,12,14,16,...,96,98]序列中獲取一個隨機數。random.randrange(10,100,2)在結果上與random.choice(range(10,100,2))等效
In [75]: random.randrange(10,20,2)  
Out[75]: 12

random.choice()  隨機選擇

In [85]: random.choice('abcde')
Out[85]: 'd'

In [86]: random.choice('abcde')
Out[86]: 'e'

random.sample()多個字元中選取特定數量的字元,返回一個列表

In [87]: random.sample('abcde',3)
Out[87]: ['d', 'a', 'c']

In [88]: ''.join(random.sample('abcde',3))  #
Out[88]: 'dab'

random.shuffle()隨機重組

In [91]: li=['a','b','c','d']

In [92]: random.shuffle(li)  #改變源資料

In [93]: li
Out[93]: ['a', 'c', 'd', 'b']