Python 實現(xiàn)隨機數(shù)詳解及實例代碼
Python3實現(xiàn)隨機數(shù)
- random是用于生成隨機數(shù)的,我們可以利用它隨機生成數(shù)字或者選擇字符串。
- random.seed(x)改變隨機數(shù)生成器的種子seed。
- 一般不必特別去設(shè)定seed,Python會自動選擇seed。
- random.random() 用于生成一個隨機浮點數(shù)n,0 <= n < 1
- random.uniform(a,b) 用于生成一個指定范圍內(nèi)的隨機浮點數(shù),生成的隨機整數(shù)a<=n<=b;
- random.randint(a,b) 用于生成一個指定范圍內(nèi)的整數(shù),a為下限,b為上限,生成的隨機整數(shù)a<=n<=b;若a=b,則n=a;若a>b,報錯
- random.randrange([start], stop [,step])從指定范圍[start,stop)內(nèi),按指定基數(shù)遞增的集合中獲取一個隨機數(shù),基數(shù)缺省值為1
- random.choice(sequence)從序列中獲取一個隨機元素,參數(shù)sequence表示一個有序類型,并不是一種特定類型,泛指list,tuple,字符串等
- random.shuffle(x[,random]) 用于將一個列表中的元素打亂(洗牌),會改變原始列表
- random.sample(sequence,k) 從指定序列中隨機獲取k個元素作為一個片段返回,不會改變原有序列
但是,有一點需要注意:Python random是偽隨機數(shù)。
那么,可以借用python random實現(xiàn)真隨機數(shù)嗎?答案是No。所謂真隨機數(shù),是要求根據(jù)絕對隨機事件產(chǎn)生的數(shù),也就是說要求要有一個無因果關(guān)系的隨機事件,那么,這玩意只存在與哲學(xué)領(lǐng)域……
目前的隨機數(shù)產(chǎn)生都是統(tǒng)計上的隨機,因為隨機源都是自然事件,頂天了算是混沌變量,絕對的無因果大概是不存在的。
不過統(tǒng)計隨機基本上都夠用了吧……
還是老老實實的用random模塊吧….
代碼演示
import random #隨機整數(shù) import string print(random.randint(0,99)) #隨機選取0到100間的偶數(shù) print(random.randrange(0, 101, 2)) #隨機浮點數(shù) print(random.random()) print(random.uniform(1, 10)) #隨機字符 print(random.choice('abcdefg&#%^*f')) #多個字符中選取特定數(shù)量的字符 print(random.sample('abcdefghij',3)) #多個字符中選取特定數(shù)量的字符組成新字符串 # 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)
結(jié)果
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
OneFlow源碼解析之Eager模式下Tensor存儲管理
這篇文章主要為大家介紹了OneFlow源碼解析之Eager模式下Tensor的存儲管理實現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04Pycharm2020最新激活碼|永久激活(附最新激活碼和插件的詳細(xì)教程)
這篇文章主要介紹了Pycharm2020最新激活碼|永久激活(附最新激活碼和插件的詳細(xì)教程),本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-09-09通過Python掃描代碼關(guān)鍵字并進(jìn)行預(yù)警的實現(xiàn)方法
這篇文章主要介紹了通過Python掃描代碼關(guān)鍵字并進(jìn)行預(yù)警的實現(xiàn)方法,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-05-05matplotlib多子圖實現(xiàn)共享坐標(biāo)軸的示例詳解
這篇文章主要為大家詳細(xì)介紹了matplotlib繪制多子圖師如何實現(xiàn)共享坐標(biāo)軸,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-02-02