本文摘自 https://my.oschina.net/cuffica/blog/33336#comment-list
python中random是用于生成隨機(jī)數(shù)的,我們可以用它來生成目的隨機(jī)數(shù)。
-
random.random()用于生成(0,1)隨機(jī)浮點數(shù)
random.random() #output:0.7207956251265334 -
random.uniform(a,b)用于生成(a,b)之內(nèi)的隨機(jī)浮點數(shù),若a=b,則生成的浮點數(shù)就是a。
random.uniform(10,20) #output:16.535305897582525 -
random.randint(a,b)用于生成(a,b)之間的隨機(jī)整數(shù)。
random.randint(10,20) #output: 15 -
random.randrange([start,]stop[,step])從指定范圍內(nèi),按指定基數(shù)遞增的集合中獲取一個隨機(jī)數(shù),start默認(rèn)為0,step默認(rèn)為1。
random.randrange(2,10,2) #output: 6 -
random.choice(sequence)從sequence中隨機(jī)取出一個元素,sequence是一個有序序列,如list,tuple,string等。
random.choice(range(10)) #output: 5 -
random.shuffle(x[,random])用于將一個列表中的元素打亂。
list=[i for i in range(10)]
random.shuffle(list) #output: [2, 7, 9, 4, 3, 5, 1, 6, 8, 0]
-
random.sample(sequence,k)從指定序列中隨機(jī)獲取k個元素作為一個片段返回,不改變元序列。
list=[i for i in range(10)]
random.sample(list,3) #ouput: [0,1,9]
附:生成10000個1000000以內(nèi)的隨機(jī)數(shù)
numList=list(range(1000000))
randNum=random.sample(numList,10000)