python怎么重复输入密码直至正确_python作业/练习/实战:生成随机密码

本文介绍了如何使用Python编写函数生成符合特定复杂度要求的随机密码,并将其保存到文件中。函数考虑了密码长度、字符类型,并确保不重复。通过两种不同方法实现,最后将密码保存至pwd.txt文件。
摘要由CSDN通过智能技术生成

作业要求

1、写一个函数,函数的功能是生成一批密码,存到文件里面

def gen_password(num):

#num代表生成多少条密码

2、密码复杂度要求

1)长度在,8-16位之间

2)密码必须包括大写字母、小写字母、数字、特殊字符

3)密码不能重复

3、生成的密码保存到文件里面

方法1提示

1、先分别从大写字母、小写字母、数字、特殊字符中各取一个 4个

2、再从所有的字符里面取4-12个,和第一部获取到的结果拼起来 8-16

import string,random

def gen_password():

for i in range(num):

pwd_len=random.randint(8,16) #总长度

upper =random.sample(string.ascii_uppercase,1) # choice只返回一个字符,sample返回一个字符串,所以这里我们使用sample

lower = random.sample(string.ascii_lowercase,1) # 在所有小写字母中随机选择一个

digits = random.sample(string.digits,1)

punctuation = random.sample(string.punctuation,1)

other=random.sample(string.ascii_letters+string.digits+string.punctuation,pwd_len-4) #剩余长度为总长度-4,在所有的字母符号数字中取

res=upper+lower+di

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值