Python隨機函數random隨機獲取數字、字符串、列表等使用詳解

在python中用於生成隨機數的模塊是random,在使用前需要import, 下面看下它的用法。

Python隨機生成一個浮點數 random.random

random.random()用於生成一個0到1的隨機符點數: 0 <= n < 1.0

註意: 以下代碼在Python3.5下測試通過, python2版本可稍加修改

描述

random() 方法返回隨機生成的一個實數,它在(0,1)范圍內。

語法

以下是 random() 方法的語法:

import random

random.random()

註意:random()是不能直接訪問的,需要導入 random 模塊,然後通過 random 靜態對象調用該方法。

參數

返回值

返回隨機生成的一個實數,它在[0,1)范圍內。

實例

以下展示瞭使用 random() 方法的實例:

>>> import random
>>> print ("random 1 : ", random.random())
random 1 : 0.8325656436327418
>>> print ("random 2 : ", random.random())
random 2 : 0.9205070325517919

以上實例運行後輸出結果為:

random 1 : 0.8325656436327418

random 2 : 0.9205070325517919

Python隨機生成一個指定精度的浮點數 random.uniform

random.uniform的函數原型為:random.uniform(a, b),用於生成一個指定范圍內的隨機符點數,兩個參數其中一個是上限,一個是下限。如果a > b,則生成的隨機數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

結果:

2.444412473072692

4.617930290730046

Python隨機生成一個實數 random.randint

random.randint()的函數原型為:random.randint(a, b),用於生成一個指定范圍內的整數。其中參數a是下限,參數b是上限,生成的隨機數n: a <= n <= b, 

註意: 下限必須小於上限

>>> import random
>>> print (random.randint(11, 20)) #生成的隨機數n: 12 <= n <= 20
13
>>> print (random.randint(20, 20)) #結果永遠是20
20

結果:

13

20

Python獲取指定范圍內隨機數 random.randrange

randrange() 方法返回指定遞增基數集合中的一個隨機數,基數默認值為1。

random.randrange的函數原型為:random.randrange([start], stop[, step]),從指定范圍內,按指定基數遞增的集合中 獲取一個隨機數。

如:random.randrange(10, 100, 2),結果相當於從[10, 12, 14, 16, … 96, 98]序列中獲取一個隨機數。

random.randrange(10, 100, 2)在結果上與 random.choice(range(10, 100, 2) 等效。

>>> import random
>>> print (random.randrange(10, 18, 2))
16

結果:

16

Python隨機獲取列表,元組或字符串中的子元素 random.choice

random.choice從序列中獲取一個隨機元素。

其函數原型為:random.choice(sequence)。參數sequence表示一個有序類型。

這裡要說明 一下:sequence在python不是一種特定的類型,而是泛指一系列的類型。list, tuple, 字符串都屬於sequence。有關sequence可以查看python手冊數據模型這一章

>>> import random
>>> print (random.choice("jb51.net"))
t
>>> print (random.choice(["jb", "51", "net"]))
jb
>>> print (random.choice(("jb", "51", "net")))
51

結果:

t

jb

51

Python列表隨機排序 random.shuffle

random.shuffle的函數原型為: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]

結果:

[7, 2, 8, 5, 3, 10, 1, 9, 6, 4]

Python隨機獲取列表中指定數量項目random.sample

random.sample的函數原型為:random.sample(sequence, k),從指定序列中隨機獲取指定長度的片斷。

sample函數不會修改原有序列。

>>> import random
>>> list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> slice = random.sample(list, 5) #從list中隨機獲取5個元素,作為一個片斷返回
>>> print (slice)
[1, 5, 9, 3, 2]
>>> print (list) #原有序列不會改變。
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

結果:

[1, 5, 9, 3, 2]

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

本文主要講解的Python隨機函數random使用方法包含瞭Python隨機數字,Python隨機字符串,Python隨機列表等,更多關於Python隨機函數random的使用請點擊下面的相關鏈接