您好,登錄后才能下訂單哦!
Python3實現隨機數,供大家參考,具體內容如下
random是用于生成隨機數的,我們可以利用它隨機生成數字或者選擇字符串。
random.seed(x)改變隨機數生成器的種子seed。
一般不必特別去設定seed,Python會自動選擇seed。
random.random() 用于生成一個隨機浮點數n,0 <= n < 1
random.uniform(a,b) 用于生成一個指定范圍內的隨機浮點數,生成的隨機整數a<=n<=b;
random.randint(a,b)
用于生成一個指定范圍內的整數,a為下限,b為上限,生成的隨機整數a<=n<=b;若a=b,則n=a;若a>b,報錯
random.randrange([start], stop [,step])
從指定范圍[start,stop)內,按指定基數遞增的集合中獲取一個隨機數,基數缺省值為1
random.choice(sequence)
從序列中獲取一個隨機元素,參數sequence表示一個有序類型,并不是一種特定類型,泛指list,tuple,字符串等
random.shuffle(x[,random]) 用于將一個列表中的元素打亂(洗牌),會改變原始列表
random.sample(sequence,k) 從指定序列中隨機獲取k個元素作為一個片段返回,不會改變原有序列
但是,有一點需要注意:python random是偽隨機數。
那么,可以借用python random實現真隨機數嗎?答案是No。所謂真隨機數,是要求根據絕對隨機事件產生的數,也就是說要求要有一個無因果關系的隨機事件,那么,這玩意只存在與哲學領域……
目前的隨機數產生都是統計上的隨機,因為隨機源都是自然事件,頂天了算是混沌變量,絕對的無因果大概是不存在的。
不過統計隨機基本上都夠用了吧……
還是老老實實的用random模塊吧….
代碼演示
import random #隨機整數 import string print(random.randint(0,99)) #隨機選取0到100間的偶數 print(random.randrange(0, 101, 2)) #隨機浮點數 print(random.random()) print(random.uniform(1, 10)) #隨機字符 print(random.choice('abcdefg&#%^*f')) #多個字符中選取特定數量的字符 print(random.sample('abcdefghij',3)) #多個字符中選取特定數量的字符組成新字符串 # print(string.join(random.sample(['a','b','c','d','e','f','g','h','i','j'], 3)).replace(" ","")) #隨機選取字符串 print(random.choice ( ['apple', 'pear', 'peach', 'orange', 'lemon'] )) #洗牌 items = [1, 2, 3, 4, 5, 6] random.shuffle(items) print("洗牌:", items) #從指定序列中隨機獲取k個元素作為一個片段返回,不會改變原有序列 list = [] list = random.sample(items,2) print(list)
結果
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。