Python练习题9(密码判断):请写一个密码安全性检查的代码代码: 首先判断密码的强度,如果结果是低或中则打印如何提升密码安全级别的提示,而高则直接退出

Posted felixqiang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python练习题9(密码判断):请写一个密码安全性检查的代码代码: 首先判断密码的强度,如果结果是低或中则打印如何提升密码安全级别的提示,而高则直接退出相关的知识,希望对你有一定的参考价值。

‘‘‘请写一个密码安全性检查的代码代码:
首先判断密码的强度,如果结果是低或中则打印如何提升密码安全级别的提示,而高则直接退出

# 密码安全性检查代码
#
# 低级密码要求:
# 1. 密码由单纯的数字或字母组成
# 2. 密码长度小于等于8位
#
# 中级密码要求:
# 1. 密码必须由数字、字母或特殊字符(仅限:[email protected]#$%^&*()_=-/,.?<>;:[]{}|\)任意两种组合
# 2. 密码长度不能低于8位
#
# 高级密码要求:
# 1. 密码必须由数字、字母及特殊字符(仅限:[email protected]#$%^&*()_=-/,.?<>;:[]{}|\)三种组合
# 2. 密码只能由字母开头
# 3. 密码长度不能低于16位‘‘‘

 

方法一:通过检查循环输入密码的每一个字母,是否包含数字、字母或特殊字符,然后通过逻辑运算符组合判断是为低级密码/中级密码/高级密码。

 1 def check_passwd():
 2     character = [email protected]#$%^&*()_=-/,.?<>;:[]{}|\\
 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(密码判断):请写一个密码安全性检查的代码代码: 首先判断密码的强度,如果结果是低或中则打印如何提升密码安全级别的提示,而高则直接退出的主要内容,如果未能解决你的问题,请参考以下文章

python 字符串实例:检查并判断密码字符串的安全强度

Python(入门小练习2)

关于密码安全

python基础练习题08

Python入门练习_登录

日常DES加密算法python实现_以密码编码学与网络安全——原理与实践(第六版)课后习题3.11为例