标签:如何 结果 put 等级 运算 退出 级别 判断 不能
‘‘‘请写一个密码安全性检查的代码代码:
首先判断密码的强度,如果结果是低或中则打印如何提升密码安全级别的提示,而高则直接退出
# 密码安全性检查代码
#
# 低级密码要求:
# 1. 密码由单纯的数字或字母组成
# 2. 密码长度小于等于8位
#
# 中级密码要求:
# 1. 密码必须由数字、字母或特殊字符(仅限:~!@#$%^&*()_=-/,.?<>;:[]{}|\)任意两种组合
# 2. 密码长度不能低于8位
#
# 高级密码要求:
# 1. 密码必须由数字、字母及特殊字符(仅限:~!@#$%^&*()_=-/,.?<>;:[]{}|\)三种组合
# 2. 密码只能由字母开头
# 3. 密码长度不能低于16位‘‘‘
方法一:通过检查循环输入密码的每一个字母,是否包含数字、字母或特殊字符,然后通过逻辑运算符组合判断是为低级密码/中级密码/高级密码。
1 def check_passwd(): 2 character = ‘~!@#$%^&*()_=-/,.?<>;:[]{}|\\‘ 3 while True: 4 context = input("请输入密码:") 5 length = len(context) 6 dit = 0 7 alp = 0 8 char = 0 9 flag = 1 10 for n in context: 11 if n in character: #检查密码是否有特殊字符 12 char = 1 13 elif n.isdigit(): #检查密码是否有数字 14 dit = 1 15 elif n.encode(‘UTF-8‘).isalpha(): #检查密码是否有字母 16 alp = 1 17 else: #检查密码含有其他字符 18 flag = 0 19 20 if flag == 0: 21 result = "密码不合法!密码只能由数字、字母及特殊字符组成,请重新输入:" 22 elif dit and alp and char and length >= 16 and context[0].isalpha(): 23 #高级密码,密码有数字、字母和特殊字母,长度大于等于16位,由字母开头 24 result = "您的密码等级为高" 25 break 26 elif ((dit and alp) or (dit and char) or (alp and char)) and length > 8: 27 #密码由数字和字母、或数字和特殊字符、或字母和特殊字符组成,且长度大于8位 28 result = "您的密码等级为中,请使用数字、字母及特殊字符三种组合,由字母开头,密码位数不少于16位来提升至高等级" 29 elif (dit or alp) or length <=8: 30 #密码由数字或字母组成,或长度小于等于8位 31 result = "您的密码等级为低,请使用数字、字母及特殊字符三种组合,由字母开头,密码位数不少于16位来提升至高等级" 32 else: 33 #其他情况则返回密码不合法 34 result = ‘密码不能全为特殊字符,请重新输入!‘ 35 36 print(result) 37 38 check_passwd()
Python练习题9(密码判断):请写一个密码安全性检查的代码代码: 首先判断密码的强度,如果结果是低或中则打印如何提升密码安全级别的提示,而高则直接退出
标签:如何 结果 put 等级 运算 退出 级别 判断 不能
原文地址:https://www.cnblogs.com/felixqiang/p/10261288.html