Python 判断密码等级的强弱,不使用正则表达式

简介: 转载请标明出处: http://blog.csdn.net/DJY1992/article/details/72845025 本文出自:【奥特曼超人的博客】编写一个函数,接收一个字符串作为参数,判断该字符串作为密码的话其安全强度如何。

转载请标明出处:
http://blog.csdn.net/DJY1992/article/details/72845025
本文出自:【奥特曼超人的博客】



编写一个函数,接收一个字符串作为参数,判断该字符串作为密码的话其安全强度如何。如果字符串中只包含大写字母、小写字母、数字字符或标点符号中的一种则为弱密码,包含两种为中低安全密码,包含三种为中高安全密码,包含四种则为强密码。

老师说,不许使用正则表达式哦

大家可以在群里讨论,或者直接把你的答案写在评论里哦~

题目地址:http://blog.csdn.net/baiyuzhong2012/article/details/72841797



这里留下我的答案:

#舍弃了
def pwdType(str):

        """
           if(str.isupper()|str.istitle()|str.isalnum()):
                #所有单词都是首字母大写
                if(str.istitle()): 
                #所有字符都是大写
                if(str.isupper()): 
                #所有字符都是小写 
                if(str.islower()): 
                #所有字符都是数字 
                if(str.isdigit()):
                # 所有字符都是字母
                if(str.isalpha()):
                #所有字符都是数字或者字母 
                if(str.isalnum()):
        """

        return 

#拆分矩阵查询
def isPwdLevel(strs):
        #模拟底层
        special = ['!','@','#','$','%','^','&','*','(',')','-','_','+','=','{','}',';',':','[',']',';',':','\"','\\','|',',','<','.','>','/','?','~','`']       
        engUpper = ['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z']
        engLower = ['a','b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']
        engNums = ['0','1','2','3','4','5','6','7','8','9']
        abc = list(strs)
        flag = 0
        flagSp = 0
        flagUp = 0
        flagLo = 0
        flagNu = 0
        for i in abc: 
            for k in special:
                if(i==k):
                    print("包含特殊字符")
                    flagSp = 1
            for k in engLower:
                if(i==k):
                    print("包含小写字母") 
                    flagUp = 1               
            for k in engUpper:
                if(i==k):
                    print("包含大写字母")
                    flagLo = 1       
            for k in engNums:
                if(i==k):
                    print("包含数字")
                    flagNu = 1

        #编写一个函数,接收一个字符串作为参数,判断该字符串作为密码的话其安全强度如何。
        #如果字符串中只包含大写字母、小写字母、数字字符或标点符号中的一种则为弱密码,
        #包含两种为中低安全密码
        #包含三种为中高安全密码
        #包含四种则为强密码。
        flag = (flagSp+flagNu+flagLo+flagUp)

        return flag

这样写方便操作元素,在Main方法里面调用一下就完成了。


if __name__=="__main__":

    #pwd = "Ab4##\""  
    pwd = "Karl-Dujinyang-309933706@qq.com"
    ret = isPwdLevel(pwd)
    vat = isinstance(ret, int)

    print(ret)
    if(vat == True):
        if(ret == 4):
            print("-强密码-")
        elif(ret == 3):
            print("-中高安全密码-")
        elif(ret == 2):
            print("-中低安全密码-")
        elif(ret == 1):
            print("-弱密码-")

运行效果:

奥特曼超人杜锦阳

(如有 错误或者更优方法欢迎指出)

|| 版权声明:本文为博主杜锦阳原创文章,转载请注明出处。

相关文章
|
4月前
|
Python
"揭秘!Python如何运用神秘的正则表达式,轻松穿梭于网页迷宫,一键抓取隐藏链接?"
【8月更文挑战第21天】Python凭借其强大的编程能力,在数据抓取和网页解析领域表现出高效与灵活。通过结合requests库进行网页请求及正则表达式进行复杂文本模式匹配,可轻松提取网页信息。本示例展示如何使用Python和正则表达式解析网页链接。首先确保已安装requests库,可通过`pip install requests`安装。接着,利用requests获取网页内容,并使用正则表达式提取所有`&lt;a&gt;`标签的`href`属性。
53 0
|
1月前
|
Python
在Python中,可以使用内置的`re`模块来处理正则表达式
在Python中,可以使用内置的`re`模块来处理正则表达式
46 5
|
1月前
|
数据采集 Web App开发 iOS开发
如何使用 Python 语言的正则表达式进行网页数据的爬取?
使用 Python 进行网页数据爬取的步骤包括:1. 安装必要库(requests、re、bs4);2. 发送 HTTP 请求获取网页内容;3. 使用正则表达式提取数据;4. 数据清洗和处理;5. 循环遍历多个页面。通过这些步骤,可以高效地从网页中提取所需信息。
|
2月前
|
Python
【收藏备用】Python正则表达式的7个实用技巧
【收藏备用】Python正则表达式的7个实用技巧
32 1
|
2月前
|
数据安全/隐私保护 Python
Python实用正则表达式归纳
Python实用正则表达式归纳
20 3
|
2月前
|
Python
Python 正则表达式高级应用指南
正则表达式是文本模式匹配的强大工具,Python 的 `re` 模块支持其操作。本文介绍正则表达式的高级应用,包括复杂模式匹配(如邮箱、电话号码)、分组与提取、替换操作、多行匹配以及贪婪与非贪婪模式的区别。通过示例代码展示了如何灵活运用这些技巧解决实际问题。
31 7
|
3月前
|
供应链 数据挖掘 数据处理
聚合数据,洞察未来!Python聚合术,解锁数据背后的商业密码!
在数据泛滥的时代,数据聚合成为企业决策的关键。它通过整合不同来源的数据,揭示隐藏规律与趋势,为科学决策提供依据。Python凭借其丰富的库如Pandas和NumPy,在数据聚合中表现出色,简化了数据处理流程。通过示例展示了如何使用Pandas对销售数据进行聚合分析,帮助企业优化库存管理、调整策略,预测需求,在竞争中脱颖而出。
55 5
|
2月前
|
JavaScript 前端开发 Scala
Python学习十:正则表达式
这篇文章是关于Python中正则表达式的使用,包括re模块的函数、特殊字符、匹配模式以及贪婪与非贪婪模式的详细介绍。
19 0
|
2月前
|
数据采集 开发者 Python
Python正则表达式之re.compile函数
`re.compile`是Python正则表达式处理中一个强大的工具,它通过预先编译正则表达式,不仅提升了执行效率,还增强了代码的组织性和可读性。掌握其使用,对于涉及文本分析、数据清洗、日志处理等领域的Python开发者来说,是非常必要的技能。正确并高效地应用这一功能,可以显著提升程序的性能和维护性。
136 0
|
3月前
|
存储 安全 算法
RSA在手,安全我有!Python加密解密技术,让你的数据密码坚不可摧
【9月更文挑战第11天】在数字化时代,信息安全至关重要。传统的加密方法已难以应对日益复杂的网络攻击。RSA加密算法凭借其强大的安全性和广泛的应用场景,成为保护敏感数据的首选。本文介绍RSA的基本原理及在Python中的实现方法,并探讨其优势与挑战。通过使用PyCryptodome库,我们展示了RSA加密解密的完整流程,帮助读者理解如何利用RSA为数据提供安全保障。
145 5