1. 程式人生 > >python 常用模組 random (學習筆記二)

python 常用模組 random (學習筆記二)

random

Python中的random模組用於生成隨機數

random.random

random.random()用於生成一個0到1的隨機符點數: 0 <= n < 1.0

>>> import random
>>> random.random()
0.9372308667909194

random.uniform

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

>>> random.uniform(1,5)
4.569452026489772
>>> random.uniform(5,1)
1.2134466866020173

random.randint

random.randint()的函式原型為:random.randint(a, b),用於生成一個指定範圍內的整數。其中引數a是下限,引數b是上限,生成的隨機數n: a <= n <= b

>>> random.randint(1,5)
4
>>> random.randint(1,1)
1

random.randrange

random.randrange的函式原型為:random.randrange([start], stop[, step]),從指定範圍內,按指定基數遞增的集合中 獲取一個隨機數

>>> random.randrange(1,10,2)    # 獲取從1開始到10間隔2的序列中隨機獲取一個數[1,3,5,7,9]
9

random.choice

random.choice從序列中獲取一個隨機元素。其函式原型為:random.choice(sequence)。引數sequence表示一個有序型別。list, tuple, 字串都屬於sequence

>>> a ,b= (1,2,3),[1,2,3]
>>> a
(1, 2, 3)
>>> b
[1, 2, 3]
>>> random.choice(a)
1
>>> random.choice(b)
2

random.shuffle

random.shuffle的函式原型為:random.shuffle(x[, random]),用於將一個列表中的元素打亂

>>> b = [1,2,3]
>>> random.shuffle(b)
>>> b
[1, 3, 2]

random.sample

random.sample的函式原型為:random.sample(sequence, k),從指定序列中隨機獲取指定長度的片斷。sample函式不會修改原有序列。

>>> b = [i for i in range(10)]
>>> b
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a = random.sample(b,3)    # 從b中隨機擷取3個數
>>> a
[1, 5, 3]