python ranndom模組及生成驗證碼

2022-05-01 15:54:14 字數 1828 閱讀 4916

python的random模組用於生成隨機數,下面介紹一下random模組的常用方法:

取隨機小數:  數學計算random.random()         用於生成乙個0

-1的隨機浮點數 0<=n<1.0

random.uniform(a,b) 生成乙個指定範圍內的隨機浮點數, a

<=n<=b

取隨機整數: 彩票 **random.randint(a,b)           取乙個指定範圍內的整數   a

<=n<=

brandom.randrange(start,stop,step) 在指定範圍內,按基數遞增的集合內取乙個隨機數,如random.randrange(

10,100,2),結果相當於從[10,12,14,...98]序列中獲取乙個隨機數。

從乙個序列中隨機取值: **random.choice()   從序列中隨機選擇乙個返回個數為

random.sample() 從序列中隨機選擇多個返回,返回的個數為函式的第二個引數

亂序:

random.shuffle()  打亂乙個列表的順序,在原列表的基礎上直接進行修改,節省空間

驗證碼的生成:

6位數字驗證碼:

s = ''

for i in range(6):

num = random.randint(0,9)

s +=str(num)

print

(s)函式版本的:

def code(n=6):

s = ''

for i in

range(n):

num = random.randint(0,9)

s +=str(num)

return

sprint(code(4))

print

(code())

6位數字+字母驗證碼:

def code(n = 6):

s = ''

for i in

range(n):

#生成隨機的大寫字母,小寫字母,數字各乙個

num = str(random.randint(0,9))

alpha_upper = chr(random.randint(65,90))

alpha_lower = chr(random.randint(97,122))

res =random.choice([num,alpha_upper,alpha_lower])

s +=res

return

sprint(code(4))

print

(code())

高階:def code(n = 6,alpha =true):

s = ''

for i in

range(n):

num = str(random.randint(0,9))

ifalpha:

alpha_upper = chr(random.randint(65,90))

alpha_lower = chr(random.randint(97,122))

num =random.choice([num,alpha_upper,alpha_lower])

s +=num

return

sprint(code(4,false))

print(code(alpha=false))

任務模組 報告模組 日誌模組

需求背景 報告模組 怎麼來處理這個報告的問題,報告是非常重要的一塊,1,可以看到每一次執行的情況,多少通過了,多少失敗了 2,可以看到執行的日誌,每一步的日誌,失敗了,我要知道失敗在 了,3,每次都要有報告 業務設計 1,任務列表,任務名稱,檢視任務詳情,報告列表,執行的功能,2,任務詳情,每乙個用...

模組之shutil模組模組詳解

shutil模組是高階的 檔案 資料夾 壓縮包 處理模組 shutil.copyfileobj fsrc,fdst length 將檔案內容拷貝到另乙個檔案中 shutil.copyfile src,dst 拷貝檔案 shutil.copymode src,dst 僅拷貝許可權。內容 組 使用者均不...

常用模組 time模組,datetime模組

print time.time print type time.time 1539594222.698943 時間戳是指從1970年1月1日到現在經歷秒數,返回乙個浮點數。print time.strftime y m d h m s p 需要規定格式 y年 m月 d日 h時 m分 s 分 p上午或...