隨機模塊應用-生成驗證碼(無圖片)
阿新 • • 發佈:2018-10-17
end class 每次 urn crate 無圖 append 驗證碼 pytho
方法一,通過choice方式生成驗證碼
此方法生成每次調用crate_code()會生成三個隨機數,然後再三個隨機數中選擇一個,資源調用相對多些
import random def v_code(code_length): res = [] if isinstance(code_length,int): for i in range(code_length): ret = create_code() res.append(ret) return res else: print("請以數字形式輸入多少位") def create_code(): #生成隨機驗證碼,通過隨機choice的方式 num = chr(random.randint(48, 57)) #隨機數字 alfs = chr(random.randint(65, 90)) #隨機大寫字母 alfb = chr(random.randint(97, 122)) #隨機大寫字母 s = str(random.choice([num,alfs,alfb])) return s #方法二,通過指定一個choice的方式指定 # choice = random.randint(1,3) # if choice == 1: # return chr(random.randint(48, 57)) #隨機數字 # elif choice ==2: # return chr(random.randint(65, 90)) #隨機大寫字母 # elif choice ==3: # return chr(random.randint(97, 122)) #隨機小寫字母 if __name__ == "__main__": code = v_code(4) for i in range(4): code[i] = str(code[i]) code_str = ‘‘.join(code) print("數組類型的展示為:",code) print("轉換成str類型後:",code_str)
方法二,通過random生成choice
此根據choice方式一次生成一次隨機數
import random def v_code(code_length): res = [] if isinstance(code_length,int): for i in range(code_length): ret = create_code() res.append(ret) return res else: print("請以數字形式輸入多少位") def create_code(): #生成隨機驗證碼,通過隨機choice的方式 # num = chr(random.randint(48, 57)) #隨機數字 # alfs = chr(random.randint(65, 90)) #隨機大寫字母 # alfb = chr(random.randint(97, 122)) #隨機大寫字母 # s = str(random.choice([num,alfs,alfb])) # return s #方法二,通過指定一個choice的方式指定 choice = random.randint(1,3) if choice == 1: return chr(random.randint(48, 57)) #隨機數字 elif choice ==2: return chr(random.randint(65, 90)) #隨機大寫字母 elif choice ==3: return chr(random.randint(97, 122)) #隨機小寫字母 if __name__ == "__main__": code = v_code(4) for i in range(4): code[i] = str(code[i]) code_str = ‘‘.join(code) print("數組類型的展示為:",code) print("轉換成str類型後:",code_str)
隨機模塊應用-生成驗證碼(無圖片)