random詳解

random庫的介紹

random是python的一個隨機函數標準庫,主要用來產生隨機數,用處比較廣泛。
調用方法和其他標準庫類似,我就不多講了。

1.常用函數

1.random.random()函數,隨機生成[0.1)的浮點數

import random
print(random.random())
0.3562356990783053

2.random.uniform 原型爲:random.uniform(a, b),用於生成一個指定範圍內的隨機符點數,兩個參數其中一個是上限,一個是下限。如果a > b,則生成的隨機數n: a <= n <= b.

import random
print(random.uniform(10,20))
print(random.uniform(20,10))
17.668027929743914
17.22003961825177

3.random.randint:random.randint(a, b),用於生成一個指定範圍內的整數。其中參數a是下限,參數b是上限,生成的隨機數n: a <= n <= b(閉區間)

print(random.randint(12, 20)) #生成的隨機數n: 12 <= n <= 20
14

4.random.choice :random.choice(sequence)。參數sequence表示一個有序類型。這裏要說明 一下:sequence在python不是一種特定的類型,而是泛指一系列的類型。list, tuple, 字符串都屬於sequence(字典和集合都是無序的)

import random
print(random.choice("Python沒那麼簡單") )
print(random.choice(['Jason', 'is', 'so', 'handsome']))
print(random.choice(('Tuple', 'List', 'Dict')))
P
handsome
Tuple

5.random.sample ,從指定序列中隨機獲取指定長度的片斷。(sample函數不會修改原有序列)

list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]  
slice = random.sample(list, 5)  #從list中隨機獲取5個元素,作爲一個片斷返回  
print(slice)
print(list) #原有序列並沒有改變。
[9, 4, 6, 2, 3]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

6.random.shuffle 用於將一個列表中的元素打亂。

import random
L=[1,2,3,4,5,6,7]
random.shuffle(L)
print(L)
#運行結果[2, 5, 7, 6, 3, 1, 4]

2.實例

隨機生成驗證碼

import random
check_code = ''
for i in range(4):
    cur = random.randrange(0,4)    #隨機猜的範圍,與循環次數相等
    #字母
    if cur == i:
        tmp = chr(random.randint(65,90))    #隨機取一個字母
    #數字
    else:
        tmp = random.randint(0,9)
    check_code += str(tmp)
print(check_code)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章