python语言学习笔记(二)------判断输入密码强弱

#判断密码是否含有数字
def isnum(str):
    flag=False
    for s in str:
        if s.isnumeric():
            flag=True
            break
    return flag
#判断密码是否含有字母
def isalpha(str):
    flag=False
    for s in str:
        if s.isalpha():
            flag=True
            break
    return flag

def main():
    #设置密码次数,最大五次
    try_time=5
    while try_time>0:
        strength_level=0
        password=input('请输入密码:')
        if len(password)>=8:
            strength_level+=1
        else:
            print('密码长度要求至少8位!')
        if isnum(password):
            strength_level+=1
        else:
            print('密码要求包含数字!')
        if isalpha(password):
            strength_level+=1
        else:
            print('密码要求包含字母!')
        dict_={1:'弱',2:'中',3:'强'}
        '''
        将密码写入文件 open(filename,mode) 
        filename其实是一个文件名包含路径,当不存在时,同级目录创建;
        mode:打开模式 
        r  只读,文件不存在报错
        w  只写,文件不存在则自动创建,若存在,再次写时覆盖
        a  在文件末尾附加,不覆盖
        r+ 读写
        '''
       
        f = open('password.txt', 'a')   #1.把冰箱门打开
        f.write('密码:{},强度:{}\n'.format(password,dict_[strength_level]))  #2.把大象装进去
        f.close()        #3.关上冰箱
        if strength_level==3:
            print('恭喜!密码强度合格!')
            break
        else:
            print('密码强度不合格!')
            try_time-=1

    if try_time<=0:
        print('错误次数过多,密码设置失败!')
if __name__ == '__main__':
    main()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值