久久国产乱子伦精品免费M,亚洲一区二区三区91,欧美国产在线视频,国产精品视频久久

自學Python教程【第五十八節】隨機數

歡迎大家來到自學Python教程教室,這里我們一起學習Python基礎知識,一起入門Python編程。上幾節課我們學習了Python正則表達式的相關知識,這節課我們學習Python中的random模塊,也就是隨機數的相關內容。

random模塊的作用是產生隨機數。之前的小游戲中用到過random中的randint:

import random

um = random.randint(1,100)

random.randint(a, b)可以生成一個a到b間的隨機整數,包括a和b。

a、b都必須是整數,且必須b≥a。當等于的時候,比如:

random.randint(3, 3)

的結果就永遠是3

除了randint,random模塊中比較常用的方法還有:

random.random()

生成一個0到1之間的隨機浮點數,包括0但不包括1,也就是[0.0, 1.0)。

random.uniform(a, b)

生成a、b之間的隨機浮點數。不過與randint不同的是,a、b無需是整數,也不用考慮大小。

random.uniform(1.5, 3)

random.uniform(3, 1.5)

這兩種參數都是可行的。

random.uniform(1.5, 1.5)永遠得到1.5。

random.choice(seq)

從序列中隨機選取一個元素。seq需要是一個序列,比如list、元組、字符串。

random.choice([1, 2, 3, 5, 8, 13]) #list

random.choice('hello') #字符串

random.choice(['hello', 'world']) #字符串組成的list

random.choice((1, 2, 3)) #元組

都是可行的用法。

random.randrange(start, stop, step)

生成一個從start到stop(不包括stop),間隔為step的一個隨機數。start、stop、step都要為整數,且start<stop。

比如:

random.randrange(1, 9, 2)

就是從[1, 3, 5, 7]中隨機選取一個。

start和step都可以不提供參數,默認是從0開始,間隔為1。但如果需要指定step,則必須指定start。

random.randrange(4) #[0, 1, 2, 3]

random.randrange(1, 4) #[1, 2, 3]

random.randrange(start, stop, step)其實在效果上等同于

random.choice(range(start, stop, step))

random.sample(population, k)

從population序列中,隨機獲取k個元素,生成一個新序列。sample不改變原來序列。

random.shuffle(x)

把序列x中的元素順序打亂。shuffle直接改變原有的序列。

以上是random中常見的幾個方法。如果你在程序中需要其中某一個方法,也可以這樣寫:

from random import randint

randint(1, 10)

另外,有些編程基礎的同學可能知道,在隨機數中有個seed的概念,需要一個真實的隨機數,比如此刻的時間、鼠標的位置等等,以此為基礎產生偽隨機數。在Python中,默認用系統時間作為seed。你也可以手動調用random.seed(x)來指定seed。

恭喜您在Python自學的道路上又堅持了一天,今天所講的Python中的隨機數,即random的用法,你學會了嗎?更多精彩內容盡在馬哥Python自學教程,敬請關注!

好啦,今天的分享到這里就結束了!希望大家能夠持續關注馬哥教育官網!每天都會有大量優質內容與大家分享!

聲明:文章來源于網絡,侵刪!

相關新聞

歷經多年發展,已成為國內好評如潮的Linux云計算運維、SRE、Devops、網絡安全、云原生、Go、Python開發專業人才培訓機構!

    1. 主站蜘蛛池模板: 南宫市| 酒泉市| 金平| 荃湾区| 曲松县| 民丰县| 黄龙县| 崇信县| 渑池县| 乐业县| 邳州市| 徐闻县| 修文县| 广南县| 开封县| 梁山县| 乌鲁木齐市| 固原市| 金门县| 墨脱县| 马山县| 长岭县| 乌拉特前旗| 潍坊市| 舒城县| 九龙坡区| 凉山| 克东县| 靖边县| 和硕县| 蛟河市| 南陵县| 和平县| 佛冈县| 福建省| 依兰县| 基隆市| 康平县| 昌乐县| 宁明县| 贵德县|