python导入random模块_Python内置模块之random
一 概述
random模塊就是取隨機(jī)數(shù)的模塊,主要用來做如下四件事情
取隨機(jī)小數(shù) 用的比較少,再并發(fā)編程中可能會用到
取隨機(jī)整數(shù) 用的比較多
從一個列表重隨機(jī)抽取值
打亂一個列表的順序
二: 隨機(jī)取小數(shù)
random.random # 返回一個隨機(jī)的小數(shù)
ramdom.uniform # 按照一個區(qū)間返回一個小數(shù)
2.1 random
importrandom # 導(dǎo)入random模塊print(random.random()) # 調(diào)用random屬性方法,返回值是一個小數(shù)
# 0.07819825943946712
2.2 uniform
importrandom # 導(dǎo)入random模塊print(random.uniform(0,1)) # 隨機(jī)生成一個0-1之間的小數(shù)print(random.uniform(1,2)) # 隨機(jī)生成一個1-2之間的小數(shù)
三 取隨機(jī)整數(shù)
random.randint # 返回一個整數(shù) 閉區(qū)間取值
random.randrange # 返回一個整數(shù) 顧首不顧尾,也可以指定間隔
例如彩票 抽獎等
3.1 randint
importrandom # 導(dǎo)入random模塊print(random.randint(1,5)) # 隨機(jī)打印一個1-5之前的整數(shù),包括1和5
3.2 randrange
importrandomprint(random.randrange(1,2)) #會一直取1 不包括2
print(random.randrange(1,100,2)) #再1到100中取間隔為2的整數(shù),不包括100
四: 從一個列表中隨機(jī)取值
random.choice # 從中選擇一個元素返回,多次choice可能取到同一個值
random.sample # 從中選擇多個元素返回 ,取到的多個值不可能重復(fù)
4.1 choice
importrandom
l= ['wangys',18,(1,2)]print(random.choice(l))
4.2 sample
importrandom
l= ['wangys',18,(1,2)]print(random.sample(l,2))
五: 打亂一個列表的順序
打亂原列表的順序,并不會產(chǎn)生一個新的列表
例如字牌,麻將游戲洗牌等
5.1 shuffle
importrandom # 導(dǎo)入random模塊
l= [1,2,3,4,5] # 定義一個l列表
random.shuffle(l) # 打亂順序print(l) # 查看已經(jīng)打亂順序的列表
六: 練習(xí)題
6.1 生成一個隨機(jī)驗證碼
需求:
一個隨機(jī)驗證碼
可以進(jìn)行選擇是純數(shù)字還是字母數(shù)字組合
可以選擇位數(shù)
默認(rèn)6位
import random
def createIdentifyingCode(n = 6,alpha = True):
s = ''
for i in range(n):
res = str(random.randint(0,9))
if alpha:
alpha_upper = chr(random.randint(65,90))
alpha_lower = chr(random.randint(97,122))
res = random.choice([res,alpha_lower,alpha_upper])
s += res
return s
print(createIdentifyingCode())
print(createIdentifyingCode(alpha=False))
6.2 發(fā)紅包
拼手氣紅包
用戶輸入金額和紅包數(shù)量
要注意每個人搶到紅包的幾率是一樣的
總結(jié)
以上是生活随笔為你收集整理的python导入random模块_Python内置模块之random的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: @transactional 接口_Sp
- 下一篇: watsonx.governance,