python中的隨機(jī)數(shù)?Random介紹
一、random模塊簡(jiǎn)介
Python標(biāo)準(zhǔn)庫中的random函數(shù),可以生成隨機(jī)浮點(diǎn)數(shù)、整數(shù)、字符串,甚至幫助你隨機(jī)選擇列表序列中的一個(gè)元素,打亂一組數(shù)據(jù)等,即用來生成隨機(jī)數(shù)。
二、random模塊重要函數(shù)
(1)random.random()函數(shù)
random.random()函數(shù),它會(huì)生成一個(gè)隨機(jī)的浮點(diǎn)數(shù),范圍是在0.0~1.0之間
>>> import random >>> print(random.random()) 0.2203627723039484 >>> print(random.random()) 0.124968990086466 >>> print(random.random()) 0.4156471793210381
注意:不能這樣寫random.Random()
>>> print(random.Random()) <random.Random object at 0x00000236EE7E9A88>
(2)random.randint()函數(shù)
random.randint()函數(shù)原型為:random.randint(a, b),隨機(jī)生一個(gè)整數(shù)int類型,可以指定這個(gè)整數(shù)的范圍,用于生成一個(gè)指定范圍內(nèi)的整數(shù)。其中參數(shù)a是下限,參數(shù)b是上限,生成的隨機(jī)數(shù)n: a <= n <= b。
>>> random.randint(12,23) 12 >>> random.randint(12,23) 19 >>> random.randint(12,12) //隨機(jī)值不變 12 >>> random.randint(12,12) 12 >>> random.randint(-8,12) 3 >>> random.randint(-8,12) -6 >>> random.randint(-8,12) -2
(3)random.uniform()函數(shù)
random.uniform()函數(shù)的原型為:random.uniform(a, b),用于生成一個(gè)指定范圍內(nèi)的隨機(jī)符點(diǎn)數(shù),其中一個(gè)參數(shù)是上限,另一個(gè)是參數(shù)下限。
>>> random.uniform(2.1,2.8) 2.571350659171257 >>> random.uniform(21,48) 28.09088226941614 >>> random.uniform(48,21) //不推薦這樣寫,一般來說第一個(gè)參數(shù)的數(shù)值要小于第二個(gè)參數(shù)的數(shù)值 46.42492852213456 >>> random.uniform(-4,21) 7.81666451991304 >>> random.uniform(-4,21) 6.382703447293181 >>> random.uniform(-4.2,2.8) -0.4436054791279309 >>> random.uniform(-4.2,2.8) 2.7511228545721043
(4)random.randrange()函數(shù)
random.randrange()函數(shù)的原型為:random.randrange([start], stop[, step]),從指定范圍內(nèi),按指定基數(shù)遞增的集合中 獲取一個(gè)隨機(jī)數(shù)。start:開始數(shù)值,stop:結(jié)束數(shù)值,step1:步長(zhǎng),默認(rèn)為1,可以不寫
>>> random.randrange(0,56,8) 24 >>> random.randrange(0,56,8) 40 >>> random.randrange(0,56,5) 55 >>> random.randrange(0,56,5) 15 >>> random.randrange(-8,6,2) -2 >>> random.randrange(-8,6,2) 4 >>> random.randrange(-8,6) //步長(zhǎng)默認(rèn)為1,此時(shí)可以不用寫 5 >>> random.randrange(-8,6)
(5)random.choice()函數(shù)
random.choice()函數(shù)原型為:random.choice(sequence),可以從任何序列,比如list列表中,選取一個(gè)隨機(jī)的元素返回,可以用于字符串、列表、元組等。參數(shù)sequence表示一個(gè)有序類型。sequence在python不是一種特定的類型,而是泛指一系列的類型。list, tuple, 字符串都屬于sequence。
>>> random.choice("12045ouhuhjn") //字符串
'u'
>>> random.choice("12045ouhuhjn")?
'4'
>>> random.choice((1,5,4,"j",4)) ?//元組
1
>>> random.choice((1,5,4,"j",4))
5
>>> random.choice([1,4,8,6,0,3]) ?//列表
4
>>> random.choice([1,4,8,6,0,3])(6)random.shuffle()函數(shù)
random.shuffle()函數(shù)的原型為:random.shuffle(x[, random]),用于將一個(gè)列表中的元素打亂。
>>> p = ["Python", "is", "powerful", "simple", "and so on..."] >>> random.shuffle(p) >>> print(p) ['powerful', 'Python', 'simple', 'is', 'and so on...'] >>> lst = [1,2,5,4,7] >>> random.shuffle(lst) >>> print(lst1) [4, 7, 5, 2, 1]
(7)random.sample()函數(shù)
random.sample()函數(shù)的原型為:random.sample(sequence, k),從指定序列中隨機(jī)獲取指定長(zhǎng)度的片斷,不作原地修改,返回列表。 如果k大于sequence元素個(gè)數(shù)的話會(huì)報(bào)錯(cuò)。
>>> lst = [2,3,5,8,7,9,6,4] >>> random.sample(lst,5) [5, 9, 7, 8, 6] >>> tup = [1,"f",8,"8f",0,7,5,8] >>> random.sample(tup,4) [7, '8f', 'f', 8] >>> str1 = "i love you 1314" >>> random.sample(str1,4) ['l', 'e', 'o', 'u']
到此這篇關(guān)于python中的隨機(jī)數(shù) Random介紹的文章就介紹到這了,更多相關(guān)python 隨機(jī)數(shù) Random內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python3.2中的字符串函數(shù)學(xué)習(xí)總結(jié)
這篇文章主要介紹了Python3.2中的字符串函數(shù)學(xué)習(xí)總結(jié),本文講解了格式化類方法、查找 & 替換類方法、拆分 & 組合類方法等內(nèi)容,需要的朋友可以參考下2015-04-04
python按修改時(shí)間順序排列文件的實(shí)例代碼
這篇文章主要介紹了python按修改時(shí)間順序排列文件的實(shí)例代碼,代碼簡(jiǎn)單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下2019-07-07
python學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)實(shí)例代碼
數(shù)據(jù)結(jié)構(gòu)就是用來將數(shù)據(jù)組織在一起的結(jié)構(gòu)。換句話說,數(shù)據(jù)結(jié)構(gòu)是用來存儲(chǔ)一系列關(guān)聯(lián)數(shù)據(jù)的東西。在Python中有四種內(nèi)建的數(shù)據(jù)結(jié)構(gòu),分別是List、Tuple、Dictionary以及Set。本文將通過實(shí)例來介紹這些數(shù)據(jù)結(jié)構(gòu)的用法。2015-05-05
Python+ChatGPT實(shí)戰(zhàn)之進(jìn)行游戲運(yùn)營(yíng)數(shù)據(jù)分析
最近ChatGPT蠻火的,今天試著讓ta用Python語言寫了一篇數(shù)據(jù)分析實(shí)戰(zhàn)案例。文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-02-02
Async?IO在Python中的異步編程工作實(shí)例解析
這篇文章主要為大家介紹了Async?IO在Python中的異步編程工作實(shí)例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-12-12
Keras實(shí)現(xiàn)Vision?Transformer?VIT模型示例詳解
這篇文章主要為大家介紹了Keras實(shí)現(xiàn)Vision?Transformer?VIT模型示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-05-05
探索Python元類的魅力:靈活定制類的創(chuàng)建過程
在Python編程中,元類(Metaclass)是一項(xiàng)高級(jí)特性,它允許我們?cè)诙x類的時(shí)候動(dòng)態(tài)地控制類的創(chuàng)建過程。元類提供了一種強(qiáng)大的機(jī)制,可以對(duì)類進(jìn)行定制化,擴(kuò)展其功能,并在類的實(shí)例化過程中執(zhí)行額外的操作,本文將深入解析2023-10-10

