Python隨機(jī)數(shù)模塊詳情
前言:
隨機(jī)數(shù)模塊實(shí)現(xiàn)了各種分布的偽隨機(jī)數(shù)生成器。對(duì)于整數(shù),從范圍中有統(tǒng)一的選擇。 對(duì)于序列,存在隨機(jī)元素的統(tǒng)一選擇、用于生成列表的隨機(jī)排列的函數(shù)、以及用于隨機(jī)抽樣而無(wú)需替換的函數(shù)。
1、生成隨機(jī)數(shù)
1.1 random.random() 方法
返回隨機(jī)生成的一個(gè)實(shí)數(shù),它在[0,1)范圍內(nèi)。
語(yǔ)法結(jié)構(gòu):
import random # 導(dǎo)入 random 模塊 random.random()
1.2 random.randint方法
語(yǔ)法格式:
random.randint(a,b)
函數(shù)返回?cái)?shù)字 N
,N
為 a
到 b
之間的數(shù)字(a <= N <= b
),包含 a
和 b
1.3 random.uniform方法
語(yǔ)法格式:
random.uniform(a,b)
函數(shù)返回一個(gè)隨機(jī)浮點(diǎn)數(shù) N
,當(dāng) a <= b
時(shí) a <= N <= b
,當(dāng) b < a
時(shí) b <= N <= a
。
1.4 random.randrange方法
語(yǔ)法結(jié)構(gòu):
random.randrange(start, stop[, step])
- start: 計(jì)數(shù)從
start
開(kāi)始。默認(rèn)是從 0 開(kāi)始。例如randrange(5)
等價(jià)于range(0, 5);
- stop: 計(jì)數(shù)到
stop
結(jié)束,但不包括stop
。例如:randrange(0, 5)
是[0, 1, 2, 3, 4]
沒(méi)有5 - step:步長(zhǎng),默認(rèn)為1。例如:
range(0, 5)
等價(jià)于randrange(0, 5, 1)
返回一個(gè)隨機(jī)范圍內(nèi)的數(shù)字
等價(jià)于choice(range(start, stop, step))
示例代碼:
import random random_value = random.random() print(random_value) randint_value = random.randint(1, 3) # 返回隨機(jī)整數(shù) print(randint_value) uniform_value = random.uniform(1, 3) # 返回隨機(jī)浮點(diǎn)數(shù) print(uniform_value) randrange_value = random.randrange(1, 100, 2) # 1到100步長(zhǎng)為2(這里只能取到100以為的奇數(shù)) print(randrange_value)
每次運(yùn)行取到的結(jié)果都是不一樣的。
2、用于序列的函數(shù)
2.1 random.choice(seq)
從非空序列中返回一個(gè)隨機(jī)元素,如果序列為空,則拋出異常
示例代碼:
import random value = random.choice(range(1, 100, 2)) # 這個(gè)等于random.randrange(1, 100, 2) print(value)
好像洗牌就要用這個(gè)方法哎
生成一個(gè)驗(yàn)證碼的小案例:
import random # 一個(gè)生成驗(yàn)證號(hào)的小案例 all_chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ' captcha = '' for _ in range(4): a = random.choice(all_chars) captcha += a # 連接字符串 print(captcha)
2.2 random.shuffle()方法
shuffle(list)
方法將序列的所有元素隨機(jī)排序
示例代碼:
import random list1 = ["beautiful" , "cute", "beautiful", 'prefect', "beautiful", "甜甜", 'lovely'] random.shuffle(list1) print(list1)
2.3 random.sample()方法
random.sample(sequence, k)
,從指定序列中隨機(jī)獲取指定長(zhǎng)度的片斷。sample
函數(shù)不會(huì)修改原有序列。切片長(zhǎng)度不能超過(guò)原有的長(zhǎng)度,否則會(huì)拋出異常
示例代碼:
import random list1 = ["beautiful", "cute", "beautiful", 'prefect', "beautiful", "甜甜", 'lovely'] list2 = random.sample(list1, len(list1)) print("原列表:", list1) print("新列表:", list2)
這個(gè)方法可以給原序列排序并不破壞原有序列
到此這篇關(guān)于Python
隨機(jī)數(shù)模塊詳情的文章就介紹到這了,更多相關(guān)Python
隨機(jī)數(shù)模塊內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
PyTorch中torch.manual_seed()的用法實(shí)例詳解
在Pytorch中可以通過(guò)相關(guān)隨機(jī)數(shù)來(lái)生成張量,并且可以指定生成隨機(jī)數(shù)的分布函數(shù)等,下面這篇文章主要給大家介紹了關(guān)于PyTorch中torch.manual_seed()用法的相關(guān)資料,需要的朋友可以參考下2022-06-06python實(shí)現(xiàn)批量下載新浪博客的方法
這篇文章主要介紹了python實(shí)現(xiàn)批量下載新浪博客的方法,涉及Python頁(yè)面抓取的相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2015-06-06Python實(shí)現(xiàn)七大查找算法的示例代碼
這篇文章主要介紹了Python實(shí)現(xiàn)七大查找算法的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04Tensorflow tf.tile()的用法實(shí)例分析
這篇文章主要介紹了Tensorflow tf.tile()的用法實(shí)例分析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-05-05利用tkinter實(shí)現(xiàn)下拉框聯(lián)動(dòng)
這篇文章主要介紹了利用tkinter實(shí)現(xiàn)下拉框聯(lián)動(dòng)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-01-01python實(shí)現(xiàn)異常信息堆棧輸出到日志文件
今天小編就為大家分享一篇python實(shí)現(xiàn)異常信息堆棧輸出到日志文件,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-12-12python在線(xiàn)編譯器的簡(jiǎn)單原理及簡(jiǎn)單實(shí)現(xiàn)代碼
這篇文章主要介紹了python在線(xiàn)編譯器的簡(jiǎn)單原理及簡(jiǎn)單實(shí)現(xiàn)代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-02-02Python使用requirements.txt和pip打包批量安裝的實(shí)現(xiàn)
本文主要介紹了Python使用requirements.txt和pip打包批量安裝的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02深入淺出Python中三個(gè)圖像增強(qiáng)庫(kù)的使用
這篇文章主要帶大家了解一下Python中三個(gè)圖像增強(qiáng)庫(kù)的使用:Imgaug、Albumentations和SOLT,文中通過(guò)示例進(jìn)行了詳細(xì)介紹,需要的可以參考一下2022-05-05命令行運(yùn)行Python腳本時(shí)傳入?yún)?shù)的三種方式詳解
這篇文章主要介紹了命令行運(yùn)行Python腳本時(shí)傳入?yún)?shù)的三種方式詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-10-10