1. 程式人生 > >random的常用方式

random的常用方式

python 範圍 系列 有序 模塊 返回 其中 隨機數 浮點

Python中的random模塊用於生成隨機數

1.random.random()

#用於生成一個0~1的隨機浮點數:0<=n<1.0

>>> import random
>>> random.random()
0.8513446516720323
>>>

2.random.uniform(a,b)

#用於生成一個指定範圍內的隨機符點數,兩個參數其中一個是上限,一個是下限。如果a <b,則生成的隨機數n: a <= n <= b。如果 a >b, 則 b <= n <= a。

>>> import random
>>> print(random.uniform(1,10))
9.959030833588626
>>> print(random.uniform(10,1))
1.6345933664294865
>>>

3.random.randint(a, b)

#用於生成一個指定範圍內的整數。其中參數a是下限,參數b是上限,生成的隨機數n: a <= n <= b

>>> import random
>>> random.randint(1,10)
2
>>>

4.random.randrange([start], stop[, step])
#從指定範圍內,按指定基數遞增的集合中 獲取一個隨機數。

random.randrange(10, 30, 2),結果相當於從[10, 12, 14, 16, ... 26, 28]序列中獲取一個隨機數。random.randrange(10, 30, 2)在結果上與 random.choice(range(10, 30, 2) 等效。

>>> import random

>>> print(random.randrange(10,30,2))
22
>>>

5.random.choice(sequence)

#參數sequence表示一個有序類型。從序列中獲取一個隨機元素.sequence在python不是一種特定的類型,而是泛指一系列的類型。list, tuple, 字符串都屬於sequence。

>>> lst = [‘1503955‘, ‘1567359‘, ‘1562164‘, ‘1559030‘, ‘1562835‘]
>>> random.choice(lst)
‘1559030‘
>>>

6.random.sample(sequence, k)

#從指定序列中隨機獲取指定長度的片斷並隨機排列。sample函數不會修改原有序列。

>>> lst = [‘1503955‘, ‘1567359‘, ‘1562164‘, ‘1559030‘, ‘1562835‘]
>>> random.sample(lst,1)
[‘1562835‘]
>>> random.sample(lst,2)
[‘1562164‘, ‘1559030‘]
>>>

7.random.shuffle(x[, random])

#用於將一個列表中的元素打亂,即將列表內的元素隨機排列,,返回值為“None”

>>> import random
>>> lst = [‘1503955‘, ‘1567359‘, ‘1562164‘, ‘1559030‘, ‘1562835‘]
>>> print(random.shuffle(lst))
None
>>> random.shuffle(lst)
>>> lst
[‘1562835‘, ‘1567359‘, ‘1562164‘, ‘1503955‘, ‘1559030‘]
>>> lst
[‘1562835‘, ‘1567359‘, ‘1562164‘, ‘1503955‘, ‘1559030‘]

random的常用方式