国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - Python標準庫之隨機數 (math包、random包)介紹

Python標準庫之隨機數 (math包、random包)介紹

2020-05-15 09:44腳本之家 Python

這篇文章主要介紹了Python標準庫之隨機數 (math包、random包)介紹,本文講解了math包的常用函數,同時給出了random包的使用例子,需要的朋友可以參考下

我們已經在Python運算中看到Python最基本的數學運算功能。此外,math包補充了更多的函數。當然,如果想要更加高級的數學功能,可以考慮選擇標準庫之外的numpy和scipy項目,它們不但支持數組和矩陣運算,還有豐富的數學和物理方程可供使用。

此外,random包可以用來生成隨機數。隨機數不僅可以用于數學用途,還經常被嵌入到算法中,用以提高算法效率,并提高程序的安全性。

math包

math包主要處理數學相關的運算。math包定義了兩個常數:

 

復制代碼 代碼如下:

math.e   # 自然常數e
math.pi  # 圓周率pi

 

此外,math包還有各種運算函數 (下面函數的功能可以參考數學手冊):

復制代碼 代碼如下:

math.ceil(x)       # 對x向上取整,比如x=1.2,返回2
math.floor(x)      # 對x向下取整,比如x=1.2,返回1
math.pow(x,y)      # 指數運算,得到x的y次方
math.log(x)        # 對數,默認基底為e。可以使用base參數,來改變對數的基地。比如math.log(100,base=10)
math.sqrt(x)       # 平方根

 

三角函數: math.sin(x), math.cos(x), math.tan(x), math.asin(x), math.acos(x), math.atan(x)

這些函數都接收一個弧度(radian)為單位的x作為參數。

角度和弧度互換: math.degrees(x), math.radians(x)

雙曲函數: math.sinh(x), math.cosh(x), math.tanh(x), math.asinh(x), math.acosh(x), math.atanh(x)

特殊函數: math.erf(x), math.gamma(x)

random包

如果你已經了解偽隨機數(psudo-random number)的原理,那么你可以使用如下:

 

復制代碼 代碼如下:

random.seed(x)

 

來改變隨機數生成器的種子seed。如果你不了解其原理,你不必特別去設定seed,Python會幫你選擇seed。

1) 隨機挑選和排序

random.choice(seq)   # 從序列的元素中隨機挑選一個元素,比如random.choice(range(10)),從0到9中隨機挑選一個整數。
random.sample(seq,k) # 從序列中隨機挑選k個元素
random.shuffle(seq)  # 將序列的所有元素隨機排序

2)隨機生成實數

下面生成的實數符合均勻分布(uniform distribution),意味著某個范圍內的每個數字出現的概率相等:

 

復制代碼 代碼如下:

random.random()          # 隨機生成下一個實數,它在[0,1)范圍內。
random.uniform(a,b)      # 隨機生成下一個實數,它在[a,b]范圍內。

 

下面生成的實數符合其它的分布 (你可以參考一些統計方面的書籍來了解這些分布):

復制代碼 代碼如下:

random.gauss(mu,sigma)    # 隨機生成符合高斯分布的隨機數,mu,sigma為高斯分布的兩個參數。
random.expovariate(lambd) # 隨機生成符合指數分布的隨機數,lambd為指數分布的參數。

 

此外還有對數分布,正態分布,Pareto分布,Weibull分布,可參考下面鏈接:

http://docs.python.org/library/random.html

假設我們有一群人參加舞蹈比賽,為了公平起見,我們要隨機排列他們的出場順序。我們下面利用random包實現:

 

復制代碼 代碼如下:

import random
all_people = ['Tom', 'Vivian', 'Paul', 'Liya', 'Manu', 'Daniel', 'Shawn']
random.shuffle(all_people)
for i,name in enumerate(all_people):
    print(i,':'+name)

 

練習

設計下面兩種彩票號碼生成器:

1. 從1到22中隨機抽取5個整數 (這5個數字不重復)

2. 隨機產生一個8位數字,每位數字都可以是1到6中的任意一個整數。

總結

math.floor(), math.sqrt(), math.sin(), math.degrees()

random.random(), random.choice(), random.shuffle()

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 欧美福利电影在线观看 | 日韩在线电影 | 91视频8mav| 成人免费视频在线观看 | 日韩中文字幕在线免费观看 | 日韩精品一区二区三区在线 | 久久精品综合 | 亚洲成人在线观看视频 | 午夜电影在线看 | 欧美日韩精品电影 | 人人爱人人射 | 久久亚洲国产精品 | 久久精品99| 阿v视频在线观看 | 在线成人www免费观看视频 | 国产黄色一级毛片 | 杨门女将寡妇一级裸片看 | 成人影院在线观看 | 国产亚洲精品精品国产亚洲综合 | 欧美99| 日韩欧美精品 | 激情图区在线观看 | 96自拍视频 | 国产精品久久久久久中文字 | 看欧美一级片 | 亚洲国产成人精品女人久久 | 欧美黄视频 | 久久91久久久久麻豆精品 | 亚洲一二三 | 欧美成人精品一区二区男人看 | 精品视频久久久 | 国产精品成人国产乱一区 | 中文字幕乱码亚洲精品一区 | 久草热8精品视频在线观看 久久亚洲精品中文字幕 | 激情综合五月天 | 亚洲视频一区 | 中文字幕在线综合 | 色偷偷噜噜噜亚洲男人 | 在线播放一区二区三区 | 日韩国产一区 | 91av在线电影 |