Python中random模塊常用函數

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

序號 函數 描述 備註
1 random.random() 生成一個0到1的隨機浮點數
2 random.uniform(a,b) 生成一個指定範圍(a,b)內的隨機浮點數
3 random.randint(a, b) 生成一個指定範圍[a,b]內的整數
4 random.randrange(start, stop, step) 從指定範圍內,按指定基數遞增的集合中 獲取一個隨機數 如:random.randrange(10, 100, 2),結果相當於從[10, 12, 14, 16, … 96, 98]序列中獲取一個隨機數。
5 random.choice(sequence) 從序列中獲取一個隨機元素 sequence在python不是一種特定的類型,而是泛指一系列的類型。list, tuple, 字符串都屬於sequence
6 random.shuffle() 用於將一個列表中的元素打亂 返回值是None
7 random.sample(sequence, k) 從指定序列中隨機獲取指定長度的片斷 sample函數不會修改原有序列。

實例

  • 生成0-1之間的隨機浮點數
import random
print("生成0-1之間的隨機數:",random.random())

生成0-1之間的隨機數: 0.8319786901712933

  • 生成指定範圍的隨機浮點數
import random
print("生成10-11之間的隨機數:",random.uniform(10,11))

生成10-11之間的隨機數: 10.228848890127637

  • 任意範圍內的整數
import random
print("生成10-20之間的隨機整數:",random.randint(10,20))

生成10-20之間的隨機整數: 12

  • 遞增集合隨機數
import random
print("生成10-100之間偶數隨機數:",random.randrange(10,100,2))

生成10-100之間偶數隨機數: 46

  • 序列中獲取一個隨機元素
import random
a = [1,2,3,4,'lll','qqq']
b = "我愛中華人名共和國 I love China"
c = ("list","str",tuple)
print("隨機獲取序列中的一個元素:",random.choice(a))
print("隨機獲取序列中的一個元素:",random.choice(b))
print("隨機獲取序列中的一個元素:",random.choice(c))

隨機獲取序列中的一個元素: 4
隨機獲取序列中的一個元素: 人
隨機獲取序列中的一個元素: <class ‘tuple’>

  • 打亂一個列表中的元素
import random
a = [1,2,3,4,'lll','qqq']
random.shuffle(a)
print("將列表打亂後結果:",a)

將列表打亂後結果: [1, ‘lll’, 4, 3, 2, ‘qqq’]

  • 從指定序列中隨機獲取指定長度的片斷
import random
a = [1,2,3,4,'lll','qqq',"fgh"]
#從list中隨機獲取2個元素,作爲一個片斷返回,原有序列並沒有改變。
slice = random.sample(a,2)
print("新序列:%s,\n原序列:%s"%(slice,a))

新序列:[1, 4],
原序列:[1, 2, 3, 4, ‘lll’, ‘qqq’, ‘fgh’]

以上內容僅是代表個人總結 若有錯誤之處,還請批評指正,歡迎大家一起學習!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章