一、random.random()git
random.random() 的功能是隨機返回一個 0-1範圍內的浮點數。dom
import random a = random.random() print(a, type(a)) 結果: 0.8598833637621788 <class 'float'>
二、random.randrange(start,stop[,step])函數
random.randrange(),隨機返回start到stop之間的一個整數,其中不包含stop元素,即顧頭不顧尾,此外還能夠設置步長。spa
import random a = random.randrange(1, 10, 2) # 1-10之間的奇數 print(a, type(a)) 結果: 3 <class 'int'>
三、random.randint(a,b)code
隨機返回[a,b]之間的整數,包括a和b,即顧頭又顧尾。即random.randrange(a,b+1)orm
import random a = random.randint(1, 5) print(a, type(a)) 結果: 5 <class 'int'>
四、random.choice(sep)blog
random.choice(sep)函數是隨機返回sep序列中的一個元素,sep非空,能夠是列表、字符串、元組等。ci
import random a = random.choice("abc1234") b = random.choice([1, 2, 3, 4]) c = random.choice((1, 2, 3, 4)) print(a, b, c) 結果: b 4 1
五、random.sample(population,k)字符串
random.sample(population,k)函數是從大量的序列或集合元素中隨機抽取k個獨一無二的元素。get
import random a = random.sample("1ers%#128aaee", 4) b = random.sample({1, 2, 3, 4, 5, 6, 7, 8}, 4) # 能夠是集合 c = random.sample(range(100000), 4) # 還能夠經過range函數生成序列
d =''.join(random.sample(string.ascii_lowercase + string.digits, 6)) # 驗證碼
print(a, b, c,d)
結果: ['s', 'e', '#', 'r'] [5, 2, 3, 8] [94298, 53763, 57161, 27395],dqcs9e
六、random.uniform(a,b)
random.uniform(a,b)函數是隨機返回一個[a,b]之間的浮點數。
import random a = random.uniform(1, 6) print(a) 結果: 2.6420055881211013
七、random.shuffle(list)
random.shuffle(list) 函數是對一個有序序列進行打亂順序,沒有返回值。
import random a = [1, 2, 3, 4, 5, 6, 7] random.shuffle(a) print(a) 結果:[4, 2, 3, 5, 6, 7, 1]
八、random.getrandbits(k)
random.getrandbits(k)生成一個k比特長的隨機整數。
import random a = random.getrandbits(3) # 返回[0-2**3)之間的整數 print(a) 結果: 7
九、random.choices(polulation,weights=None,*, cum_weights=None,k=1)
random.choices(polulation,weights=None,*, cum_weights=None,k=1) 函數是從一個集羣中隨機選取k次數據,結果返回一個列表,元素的選取有響應的權重(或者機率),weights表示相對權重,cum_weights表示累計權重,若是設置權重,len(population) == len(weights) 或 len(population) == len(cum_weights)。
import random a = random.choices([1, 2, 3, 4, 5], weights=[1, 0, 0, 0, 0], k=2) # 表示第一個元素的權重爲1,其他元素爲0,因此只能取到第一個元素的值 print(a) 結果:[1, 1] b = random.choices([1, 2, 3, 4, 5], weights=[1, 1, 1, 1, 1], k=2) # 表示每一個元素的權重均爲1/5,即取到每一個元素的機率相同。 print(b) 結果:[4, 1] c = random.choices([1, 2, 3, 4, 5], cum_weights=[1, 1, 1, 1, 1], k=2) # cum_weights = [1,1,1,1,1] 至關於weights = [1,0,0,0,0] print(c) 結果:[1, 1]