您好,登錄后才能下訂單哦!
這篇文章運(yùn)用簡單易懂的例子給大家介紹Python中怎么使用random模塊,代碼非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
python的random模塊
random模塊是python中一個生成隨機(jī)數(shù)的模塊。
random不是python解釋器內(nèi)置的模塊。
導(dǎo)入random模塊的方法是:
import random
如果只使用random模塊中的單個方法的話,也可以使用
from random import method_name
例如:
我只想生成一個10以內(nèi)的隨機(jī)的整數(shù),不需要random模塊的別的方法的時候,也可以使用以下命令
from random import randint random.randint(0,10)
查看random模塊的內(nèi)置方法可以使用以下命令:
dir(random)
其中常用的方法有下面幾個:
choice
#從一個非空列表中隨機(jī)選擇一個元素 >Choose a random element from a non-empty sequence.
>>> random.choice([1,3,5,7]) 1 >>> random.choice([1,3,5,7]) 3
randint
#從a和b(包括b)的范圍內(nèi)隨機(jī)生成一個整數(shù) >Return random integer in range [a, b], including both end points.
>>> random.randint(0,9) 8 >>> random.randint(0,9) 0 >>> random.randint(0,9) 4 >>> random.randint(0,9) 3
random
#生成一個0(包括0)到1內(nèi)的浮點(diǎn)數(shù) >random() -> x in the interval [0, 1).
>>> random.random() 0.3898009217264272 >>> random.random() 0.897328889551127 >>> random.random() 0.9899842422616898
randrange
#在指定范圍內(nèi)隨機(jī)生成一個整數(shù) > Choose a random item from range(start, stop[, step]). This fixes the problem with randint() which includes the endpoint; in Python this is usually not what you want.
>>> random.randrange(100,200) 156 >>> random.randrange(100,200) 133 >>> random.randrange(10,20) 11 >>> random.randrange(10,20) 15
sample
#從一個列表或集合中隨機(jī)選擇多個元素 >Chooses k unique random elements from a population sequence or set.
>>> random.sample([23,[1,2,3],"aa","yy"],2) ['aa', 23] >>> random.sample([23,[1,2,3],"aa","yy"],3) ['aa', [1, 2, 3], 23]
shuffle
#把一個列表內(nèi)元素的順序打亂,列表的內(nèi)存地址不變 >Shuffle list x in place, and return None.
>>> l1=[1,"a",3,5,"b","c"] >>> id(l1) 140436582171208 >>> random.shuffle(l1) >>> print(l1) [1, 'b', 'a', 'c', 3, 5] >>> id(l1) 140436582171208
uniform
#在指定范圍內(nèi)隨機(jī)生成一個浮點(diǎn)數(shù) >Get a random number in the range [a, b) or [a, b] depending on rounding.
>>> random.uniform(12,33) 27.02416276339153 >>> random.uniform(12,33) 13.832414985007832 >>> random.uniform(12,33) 12.827493699496461
現(xiàn)在想生成一個5位包含大小寫和數(shù)字的隨機(jī)驗(yàn)證碼,代碼如下:
import random def random_code(): random_str = "" for i in range(5): #隨機(jī)選擇一個整數(shù) num=random.randint(0,9) #生成一個大寫字母 upper=chr(random.randint(65,90)) #生成一個小寫字母 lower=chr(random.randint(97,122)) #每次從大小寫字母中隨機(jī)選擇一位 res=random.choice([str(num),upper,lower]) random_str+=res return random_str print(random_code())
運(yùn)行5次這個程序,生成的驗(yàn)證碼如下:
KwlTN t1Pag 294l6 t1Pag 294l6
關(guān)于Python中怎么使用random模塊就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。