需求:
一、写一个自动生成密码文件的程序
1、你输入几,文件里面就给你产生多少条密码
2、密码必须包括,大写字母、小写字母、数字、特殊字符
3、密码不能重复
4、密码都是随机产生的
5、密码长度6-11
代码:
import random, string f = open('password', 'w') f.seek(0) num_password = input('请输入你要生成的密码条数: ') for i in range(int(num_password)): password = random.choice('abcdefghijklmnopqrstuvwxyz') password1 = random.choice('ABCDEFGHIJKLMNOPQRSTUVWXYZ') password2 = random.choice('{%#)^;,(<+@!:}]",*''{|~$&.?-/,\\ =[_`>}') password3 = random.choice('0123456789') password4 = random.sample('abcdefghijklmnopqrstuvwxy',random.randint(2,7)) #从里边随机取2-7个元素 #print(password4) password5 = ''.join(password4)#列表转成字符串 #print(password5) new_password = password + password1 + password2 + password3 + password5 #print(new_password) new1_password = ''.join(new_password.split())#列表转字符串并去空格 print(new1_password) password_list = list(new1_password)#字符串转列表 password_set = set(password_list)#列表转集合去重复数据 password_list1 = list(password_set) #集合转列表 new2_password = "".join(password_list1)#列表转字符串 new2_password = ''.join(new2_password) + '\n' f.write(new2_password) # new1_password = ''.join(new1_password)+'\n' # # f.write(new1_password) f.close()