Python的random模塊提供了豐富的隨機數生成函數。這些函數可以用於密碼學、模擬和遊戲等方面。本文將介紹Python的random模塊的常用函數和用法,同時提供代碼示例。
一、random()函數
random()函數返回一個0到1之間的隨機浮點數:
import random print(random.random())
輸出結果:
0.9707847535471569
我們可以生成一個指定範圍內的隨機整數:
print(random.randint(1, 10))
輸出結果:
8
我們還可以生成一個隨機的字符或字符串:
print(chr(random.randint(97,122))) print(''.join(random.sample('abcdefghijklmnopqrstuvwxyz1234567890',8)))
輸出結果:
q fd39bsmA
二、seed()函數
seed()函數用於初始化隨機生成器:
random.seed(10) print(random.random())
輸出結果:
0.5714025946899135
我們也可以使用當前時間作為seed:
import time random.seed(time.time()) print(random.random())
輸出結果:
0.31087385919352544
三、shuffle()函數
shuffle()函數可以打亂一個序列:
lst = [1, 2, 3, 4, 5] random.shuffle(lst) print(lst)
輸出結果:
[2, 4, 1, 5, 3]
四、sample()函數
sample()函數可以從一個序列中隨機選擇一些元素:
lst = [1, 2, 3, 4, 5] print(random.sample(lst, 3))
輸出結果:
[4, 2, 3]
五、uniform()函數
uniform()函數返回在指定範圍內的隨機浮點數:
print(random.uniform(1.0, 2.0))
輸出結果:
1.9510951636554168
六、常見用法
random模塊還有很多其它常用的用法,比如生成隨機顏色、生成隨機密碼等:
print('#{:02X}{:02X}{:02X}'.format(*[random.randint(0, 255) for _ in range(3)])) print(''.join(random.sample('abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890',10)))
輸出結果:
#D175BE qYv3tunBND
七、小結
本文介紹了Python random模塊的常用函數和用法,主要包括random()函數、seed()函數、shuffle()函數、sample()函數、uniform()函數和常見用法。使用random模塊可以方便地生成隨機數和序列,為密碼學、模擬和遊戲等方面提供了豐富的支持。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/285920.html