Python 產生隨機長度的密碼

2022-06-09 17:24:06 字數 1679 閱讀 3002

#

【需求】

#1、寫乙個生產密碼的程式,輸入幾,就產生幾條密碼,密碼產生的不重複。

#2、要求密碼:長度6 - 12,隨機產生

#3、密碼必須包含大寫字母、小寫字母、數字

#4、產生完密碼後存到乙個檔案裡面

#不用集合的

#1、隨機取一位數字、一位大寫字母、一位小寫字母 #3個字串

#2、生成乙個6-12之間的隨機數,number

#3、把隨機數減去3,剩下的隨機取

#用集合的

#1、生成3個集合,大寫字母、小寫、數字3個集合

#2、隨機取6-12位的密碼,從所有的大寫+小寫+數字裡面取

#3、取出來密碼分別和大寫字母、小寫、數字3個集合取交集

import

string,random

defcreate_password():

start = random.choice(string.digits) +random.choice(string.ascii_lowercase) \

+random.choice(string.ascii_uppercase)

end = random.sample(string.digits+string.ascii_letters,random.randint(6,12)-3)

random.shuffle(end)

#打亂順序

password = ''.join(end) #

轉換為字串

return

password

defcreate_password2():

number_set = set(string.digits)#

0-9 upper_set =set(string.ascii_uppercase)

lower_set =set(string.ascii_lowercase)

while

true:

length = random.randint(6, 12)#

密碼長度

before_password = random.sample(string.digits+string.ascii_uppercase+string.ascii_lowercase,length)

p =set(before_password)

if number_set & p and upper_set & p and lower_set &p:

return

''.join(p)

defrun():

number = input("

請輸入產生的條數

").strip() #

1000

password_set =set()

ifnumber.isdigit():

while len(password_set)!=int(number):#

0,1000

#result = create_password()

result =create_password2()

password_set.add(result+'\n'

) with open(

'passwords.txt

','w

') as fw:

fw.writelines(password_set)

oracle生成隨機長度字串

oracle生成隨機字串 當我們構造資料庫測試案例時,有時會生成需要使用生成隨機長度的字串 使用dbms random.string方法生成 官方引用 使用說明 dbms random.string opt in char,len in number return varchar2 opt選項說明 ...

Python 生成任意長度隨機密碼

20210123新增 生成任意長度隨機字串 33 126 0 48 9 57 a 65 z 90 a 97 z 122 import random my list temp list for i in range 33 127 chr i random.shuffle my list pw len ...

python 隨機產生姓名

coding utf 8 importrandom list xing 趙 錢 孫 李 周 吳 鄭 王 馮 陳 褚 衛 蔣 沈 韓 楊 張 李 list ming 豫 章 故 郡 洪 都 新 府 星 分 翼 軫 地 接 衡 廬 襟 三 江 而 帶 五 湖 控 蠻 荊 而 引 甌 越 物 華 天 寶 ...