Python隨機數(shù)random模塊使用指南
random 模塊是Python自帶的模塊,除了生成最簡單的隨機數(shù)以外,還有很多功能。
random.random()
用來生成一個0~1之間的隨機浮點數(shù),范圍[0,10
>>> import random >>> random.random() 0.5038461831828231
random.uniform(a,b)
返回a,b之間的隨機浮點數(shù),范圍[a,b]或[a,b),取決于四舍五入,a不一定要比b小。
>>> random.uniform(50,100) 76.81733455677832 >>> random.uniform(100,50) 52.98730193316595
random.randint(a,b)
返回a,b之間的整數(shù),范圍[a,b],注意:傳入?yún)?shù)必須是整數(shù),a一定要比b小
>>> random.randint(50,100) 54 >>> random.randint(100,50) Traceback (most recent call last): File "<pyshell#6>", line 1, in <module> random.randint(100,50) File "C:\Python27\lib\random.py", line 242, in randint return self.randrange(a, b+1) File "C:\Python27\lib\random.py", line 218, in randrange raise ValueError, "empty range for randrange() (%d,%d, %d)" % (istart, istop, width) ValueError: empty range for randrange() (100,51, -49) >>> random.randint(50.5,100.6) Traceback (most recent call last): File "<pyshell#7>", line 1, in <module> random.randint(50.5,100.6) File "C:\Python27\lib\random.py", line 242, in randint return self.randrange(a, b+1) File "C:\Python27\lib\random.py", line 187, in randrange raise ValueError, "non-integer arg 1 for randrange()" ValueError: non-integer arg 1 for randrange()
random.randrang([start], stop[, step])
返回有個區(qū)間內(nèi)的整數(shù),可以設(shè)置step。只能傳入整數(shù),random.randrange(10, 100, 2),結(jié)果相當于從[10, 12, 14, 16, … 96, 98]序列中獲取一個隨機數(shù)。
>>> random.randrange(100) 58 >>> random.randrange(10,100,2) 54
random.choice(sequence)
從序列中隨機獲取一個元素,list, tuple, 字符串都屬于sequence。這里的sequence 需要是有序類型。random.randrange(10,100,2)在結(jié)果上與 random.choice(range(10,100,2) 等效。
>>> random.choice(("stone","scissors","paper"))
'stone'
>>> random.choice(["stone","scissors","paper"])
'scissors'
>>> random.choice("Random")
'm'
random.shuffle(x[,random])
用于將列表中的元素打亂,俗稱為洗牌。會修改原有序列。
>>> poker = ["A","2","3","4","5","6","7","8","9","10","J","Q","K"] >>> random.shuffle(poker) >>> poker ['4', '10', '8', '3', 'J', '6', '2', '7', '9', 'Q', '5', 'K', 'A']
random.sample(sequence,k)
從指定序列中隨機獲取k個元素作為一個片段返回,sample函數(shù)不會修改原有序列。
>>> poker = ["A","2","3","4","5","6","7","8","9","10","J","Q","K"] >>> random.sample(poker,5) ['4', '3', '10', '2', 'Q']
上述幾個方式是Python常用的一些方法,但是關(guān)于隨機數(shù)還有很多的故事。下回分解~
相關(guān)文章
Python使用random模塊生成隨機數(shù)操作實例詳解
這篇文章主要介紹了Python使用random模塊生成隨機數(shù)操作,結(jié)合具體實例形式詳細分析了random模塊生成隨機數(shù)的各種常用技巧與相關(guān)操作注意事項,需要的朋友可以參考下2019-09-09
Python多進程方式抓取基金網(wǎng)站內(nèi)容的方法分析
這篇文章主要介紹了Python多進程方式抓取基金網(wǎng)站內(nèi)容的方法,結(jié)合實例形式分析了Python多進程抓取網(wǎng)站內(nèi)容相關(guān)實現(xiàn)技巧與操作注意事項,需要的朋友可以參考下2019-06-06
python使用ctypes調(diào)用dll遇到的坑解決記錄
這篇文章主要為大家介紹了python使用ctypes調(diào)用dll遇到的坑解決記錄,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-12-12
Python OpenCV 彩色與灰度圖像的轉(zhuǎn)換實現(xiàn)
為了加快處理速度在圖像處理算法中,往往需要把彩色圖像轉(zhuǎn)換為灰度圖像,本文主要介紹了Python OpenCV 彩色與灰度圖像的轉(zhuǎn)換實現(xiàn),感興趣的可以了解一下2021-06-06

