溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

對python產生隨機的二維數組實例詳解

發布時間:2020-10-16 18:02:55 來源:腳本之家 閱讀:353 作者:杰醬 欄目:開發技術

最近找遍了python的各個函數發現無法直接生成隨機的二維數組,其中包括random()相關的各種方法,都沒有得到想要的結果。最后在一篇博客中受到啟發,通過列表解析的方法得到隨機的二維數組。

具體如下:

a = [[random.randint(1, 4) for j in range(1, 3)] for i in range(1, 11)]
print(array(a))

其中random.randint(1, 4)用來產生一個隨機整數。此時創建了一個10行2列的數組。

[[1 3] 
[1 2] 
[3 1] 
[1 2] 
[1 2] 
[3 3] 
[3 1] 
[1 3] 
[1 2] 
[3 3]]

然后對random()中的各種方法做一個總結,具體如下:

1、choice()

從序列中獲取一個隨機元素

random.choice(['a','b','c'])

結果為‘b'

2、randint()

用于生成一個指定范圍內的整數,能取到邊界的值

random.randint(1, 2)

結果為‘1'

3、random()

用于生成一個0到1的隨機符點數: 0 <= n < 1.0

random.random()

結果為‘0.29892210378218154'

4、randrange()

從序列中獲取一個隨機數

random.randrange(10,100,2)

結果為‘68'

此時如果出現'module ‘numpy.random' has no attribute ‘randrange'

記得在開頭加上import random

5、sample()

從指定序列中隨機獲取指定長度的片斷,不改變原來序列順序

list2 = [i**2 for i in range(0, 10)]
print(random.sample(list2, 3))

結果為‘[16, 9, 4]'

再看看list2有沒有改變

結果為‘[0, 1, 4, 9, 16, 25, 36, 49, 64, 81] '

沒有改變,所以sample函數不會修改原有序列

6、shuffle()

將一個列表中的元素打亂

list1 = [1,2,3,4,5,6]
random.shuffle(list1)
print(list1)

結果為‘[5, 3, 2, 1, 4, 6]'

7、uniform()

用于生成一個指定范圍內的隨機符點數

a=random.uniform(2,3)

結果為‘2.046090433068011'

以上這篇對python產生隨機的二維數組實例詳解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女