【Python入門】——Random庫的使用

Random庫的使用

導入庫

import random

基礎隨機函數

random.seed(a=None) #生成一個隨機種子
random.random()     #生成一個[0.0,1.0)的隨機小數

擴展隨機數函數

randint(a,b)       #生成一個[a,b]之間的整數
randrange(m,n[,k]) #生成一個[m,n)之間以k爲步長的隨機整數
getrandbits(k)     #生成一個k比特長的隨機整數
uniform(a,b)       #生成一個[a,b]之間的隨機小數
choice(seq)        #從序列seq中隨機選擇一個元素
shuffle(seq)       #序列seq中元素隨機排列,返回打亂後的序列

實例:圓周率的計算

#蒙特卡羅方法計算圓周率
#圓周率是 圓的面積除以正方形的面積的4倍
#向正方形內的圓隨機撒點,
#圓內的點的個數 / 總點數就是圓餘正方形面積比值
import random
import time
DARTS = 1000*1000 #撒一百萬個點
hits = 0.0        #在圓內部點的個數
start = time.perf_counter()   
for i in range(1,DARTS+1):
    x,y = random.random(),random.random() #產生隨機值
    dist = pow(x ** 2 + y ** 2,0.5)#計算長度
    if dist <= 1.0:#在圓內
        hits = hits + 1 
pi = 4*(hits/DARTS) 
print("圓周率值是:{}".format(pi))
print("運行時間是{:.5f}s".format(time.perf_counter()-start))
發佈了132 篇原創文章 · 獲贊 54 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章