|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 LiuzhonG 于 2017-6-27 23:58 编辑
问题链接:http://bbs.fishc.com/forum.php?m ... peid%26typeid%3D398
我的解题思路为:全程用BIF判断,判断密码是不是纯字母和数字及长度,但判断是否带特殊符号我就没办法了,因此我用password.isalnum() == False这个BIF代替密码有无除字母数字外的特殊符号,因为不会用别的BIF来判断,所以无法确定特殊符号的种类,以及无法判断字母数字符号的组合数,所以中等密码和高等密码无法区分,因此我把判断密码等级是否为高的放在中等密码上面。
我想请教的是,按我思路有没有办法解决?
- password = input('请输入需要检查的密码组合:')
- #'''判断密码是否为纯字母或数字或长度小于8'''
- if password.isalpha() == True or password.isdigit() == True or password.isalnum() == True or len(password) < 8:
- print('你的密码安全等级评定为:低')
- #'''判断密码是否不是纯字母和数字,用password.isalnum() == False代替密码有除字母数字外的特殊符号
- #因为不会用别的BIF来判断,所以无法确定特殊符号的种类,以及无法判断字母数字符号的组合数,所以中等密码和高等密码无法区分'''
- elif password.isalpha() == False and password.isdigit() == False and password.isalnum() == False and len(password) >= 16 and isinstance(password[0],str) == True:
- print('你的密码安全等级评定为:高')
- elif password.isalpha() == False and password.isdigit() == False and password.isalnum() == False and len(password) >= 8:
- print('你的密码安全等级评定为:中')
复制代码
综合型密码你单存用内置bif来判断是没有意义的,最简单的办法就是用正则表达式来判断 简单粗暴 但是你应该没有学习到正则表达式 , 所以还是按部就班的来吧
|
|