在python中用于生成隨機(jī)數(shù)的模塊是random,在使用前需要import, 下面看下它的用法。
Python隨機(jī)生成一個浮點(diǎn)數(shù) random.random
random.random()用于生成一個0到1的隨機(jī)符點(diǎn)數(shù): 0 = n 1.0
注意: 以下代碼在Python3.5下測試通過, python2版本可稍加修改
描述
random() 方法返回隨機(jī)生成的一個實(shí)數(shù),它在(0,1)范圍內(nèi)。
語法
以下是 random() 方法的語法:
import random
random.random()
注意:random()是不能直接訪問的,需要導(dǎo)入 random 模塊,然后通過 random 靜態(tài)對象調(diào)用該方法。
參數(shù)
無
返回值
返回隨機(jī)生成的一個實(shí)數(shù),它在[0,1)范圍內(nèi)。
實(shí)例
以下展示了使用 random() 方法的實(shí)例:
>>> import random
>>> print ("random 1 : ", random.random())
random 1 : 0.8325656436327418
>>> print ("random 2 : ", random.random())
random 2 : 0.9205070325517919
以上實(shí)例運(yùn)行后輸出結(jié)果為:
random 1 : 0.8325656436327418
random 2 : 0.9205070325517919
Python隨機(jī)生成一個指定精度的浮點(diǎn)數(shù) random.uniform
random.uniform的函數(shù)原型為:random.uniform(a, b),用于生成一個指定范圍內(nèi)的隨機(jī)符點(diǎn)數(shù),兩個參數(shù)其中一個是上限,一個是下限。如果a > b,則生成的隨機(jī)數(shù)n: b = n = a。如果 a b, 則 a = n = b。
>>> import random
>>> print (random.uniform(1, 10))
2.444412473072692
>>> print (random.uniform(10, 1))
4.617930290730046
結(jié)果:
2.444412473072692
4.617930290730046
Python隨機(jī)生成一個實(shí)數(shù) random.randint
random.randint()的函數(shù)原型為:random.randint(a, b),用于生成一個指定范圍內(nèi)的整數(shù)。其中參數(shù)a是下限,參數(shù)b是上限,生成的隨機(jī)數(shù)n: a = n = b,
注意: 下限必須小于上限
>>> import random
>>> print (random.randint(11, 20)) #生成的隨機(jī)數(shù)n: 12 = n = 20
13
>>> print (random.randint(20, 20)) #結(jié)果永遠(yuǎn)是20
20
結(jié)果:
13
20
Python獲取指定范圍內(nèi)隨機(jī)數(shù) random.randrange
randrange() 方法返回指定遞增基數(shù)集合中的一個隨機(jī)數(shù),基數(shù)默認(rèn)值為1。
random.randrange的函數(shù)原型為:random.randrange([start], stop[, step]),從指定范圍內(nèi),按指定基數(shù)遞增的集合中 獲取一個隨機(jī)數(shù)。
如:random.randrange(10, 100, 2),結(jié)果相當(dāng)于從[10, 12, 14, 16, ... 96, 98]序列中獲取一個隨機(jī)數(shù)。
random.randrange(10, 100, 2)在結(jié)果上與 random.choice(range(10, 100, 2) 等效。
>>> import random
>>> print (random.randrange(10, 18, 2))
16
結(jié)果:
16
Python隨機(jī)獲取列表,元組或字符串中的子元素 random.choice
random.choice從序列中獲取一個隨機(jī)元素。
其函數(shù)原型為:random.choice(sequence)。參數(shù)sequence表示一個有序類型。
這里要說明 一下:sequence在python不是一種特定的類型,而是泛指一系列的類型。list, tuple, 字符串都屬于sequence。有關(guān)sequence可以查看python手冊數(shù)據(jù)模型這一章
>>> import random
>>> print (random.choice("jb51.net"))
t
>>> print (random.choice(["jb", "51", "net"]))
jb
>>> print (random.choice(("jb", "51", "net")))
51
結(jié)果:
t
jb
51
Python列表隨機(jī)排序 random.shuffle
random.shuffle的函數(shù)原型為:random.shuffle(x[, random]),用于將一個列表中的元素打亂。如:
>>> import random
>>> list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> random.shuffle(list)
>>> print (list)
[7, 2, 8, 5, 3, 10, 1, 9, 6, 4]
結(jié)果:
[7, 2, 8, 5, 3, 10, 1, 9, 6, 4]
Python隨機(jī)獲取列表中指定數(shù)量項(xiàng)目random.sample
random.sample的函數(shù)原型為:random.sample(sequence, k),從指定序列中隨機(jī)獲取指定長度的片斷。
sample函數(shù)不會修改原有序列。
>>> import random
>>> list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> slice = random.sample(list, 5) #從list中隨機(jī)獲取5個元素,作為一個片斷返回
>>> print (slice)
[1, 5, 9, 3, 2]
>>> print (list) #原有序列不會改變。
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
結(jié)果:
[1, 5, 9, 3, 2]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
本文主要講解的Python隨機(jī)函數(shù)random使用方法包含了Python隨機(jī)數(shù)字,Python隨機(jī)字符串,Python隨機(jī)列表等,更多關(guān)于Python隨機(jī)函數(shù)random的使用請點(diǎn)擊下面的相關(guān)鏈接
您可能感興趣的文章:- Python數(shù)據(jù)分析之pandas讀取數(shù)據(jù)
- Python 循環(huán)讀取數(shù)據(jù)內(nèi)存不足的解決方案
- python實(shí)現(xiàn)scrapy爬蟲每天定時抓取數(shù)據(jù)的示例代碼
- Python從文件中讀取數(shù)據(jù)的方法步驟
- python從PDF中提取數(shù)據(jù)的示例
- python從Oracle讀取數(shù)據(jù)生成圖表
- python3:excel操作之讀取數(shù)據(jù)并返回字典 + 寫入的案例
- Python爬取數(shù)據(jù)并實(shí)現(xiàn)可視化代碼解析
- Python定時從Mysql提取數(shù)據(jù)存入Redis的實(shí)現(xiàn)
- 使用Python腳本從文件讀取數(shù)據(jù)代碼實(shí)例
- python3實(shí)現(xiàn)從kafka獲取數(shù)據(jù),并解析為json格式,寫入到mysql中
- Python實(shí)現(xiàn)一個自助取數(shù)查詢工具