偽隨機數生成器——random模組的用法
阿新 • • 發佈:2018-11-26
1. 使用random.random(),生成區間 [0,1)內的浮點數
import random for i in range(3): a = random.random() print("{:06.3f}".format(a), end=" ")
# 輸出:00.042 00.998 00.841
2. 使用random.uniform(a, b),生成指定區間(a, b)內的浮點數
import random # a = random.uniform(1, 100) # print(a) fori in range(5): print("{:06.3f}".format(random.uniform(1, 100)), end=" ")
# 輸出:89.114 24.131 32.165 39.196 92.997
3. 使用random.seed(a),不改變a的值,重新執行會生成相同的隨機數
import random # a = random.uniform(1, 100) # print(a) random.seed(1) for i in range(5):print("{:06.3f}".format(random.random()), end=" ") 第一次輸出:00.134 00.847 00.764 00.255 00.495 第二次輸出:00.134 00.847 00.764 00.255 00.495
4. 使用random.randint(a, b),生成區間 [a, b)內的整數
import random for i in range(3): print(random.randint(1, 10), end=" ") # 輸出:5 1 7
5. 使用random.randrange(start, stop, step),生成(start, stop)區間內的步長為step的隨機數
import random for i in range(3): print(random.randrange(1, 100, 5), end=" ") # 輸出:46 86 61
6. 使用random.choice(list),從序列中隨機選取值,例如:拋硬幣10000次
import random outcomes = { "heads": 0, "tails": 0 } sides = list(outcomes.keys()) for i in range(10000): outcomes[random.choice(sides)] += 1 print("heads:", outcomes["heads"]) print("tails:", outcomes["tails"]) # 輸出:heads: 5053 tails: 4947
7.