博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
checkio-house password
阅读量:4147 次
发布时间:2019-05-25

本文共 1397 字,大约阅读时间需要 4 分钟。

斯蒂芬和索菲亚对于一切都使用简单的密码,忘记了安全性。请你帮助尼古拉开发一个密码安全检查模块。如果密码的长度大于或等于10个符号,至少有一个数字,一个大写字母和一个小写字母,该密码将被视为足够强大。密码只包含ASCII拉丁字母或数字。

输入: 密码 (str, unicode)。

输出: 密码的安全与否,作为布尔值(bool),或者任何可以转换和处理为布尔值的数据类型。你会在结果看到转换后的结果(True 或 False)。

Example:

checkio(‘A1213pokl’) == False
checkio(‘bAse730onE’) == True
checkio(‘asasasasasasasaas’) == False
checkio(‘QWERTYqwerty’) == False
checkio(‘123456123456’) == False
checkio(‘QwErTy911poqqqq’) == True

如何使用: 如果你担心你的应用或服务的安全性,您可以检查用户密码的复杂性。你可以使用这些技巧要求你的用户的密码符合多个条件(标点符号或unicode)。

import redef checkio(data):    r1=re.search(r'[0-9]+',data)    r2=re.search(r'[a-z]+',data)    r3=re.search(r'[A-Z]+',data)    r4=re.match(r'\w{10,}',data)    if bool(r1) and bool(r2) and bool(r3) and bool(r4):        return True    else:        return False    #replace this for solution    #return True or False#Some hints#Just check all conditionsif __name__ == '__main__':    #These "asserts" using only for self-checking and not necessary for auto-testing    assert checkio('A1213pokl') == False, "1st example"    assert checkio('bAse730onE4') == True, "2nd example"    assert checkio('asasasasasasasaas') == False, "3rd example"    assert checkio('QWERTYqwerty') == False, "4th example"    assert checkio('123456123456') == False, "5th example"    assert checkio('QwErTy911poqqqq') == True, "6th example"

注意re.match和re.search

re.match(‘\d’,aa33) -none(从字符串首部匹配)
re.search(‘\d’,aa33)–not none

转载地址:http://bjvti.baihongyu.com/

你可能感兴趣的文章
servlet中的cookie和session
查看>>
过滤器及JSP九大隐式对象
查看>>
软件(项目)的分层
查看>>
【Python】学习笔记——-7.0、面向对象编程
查看>>
【Python】学习笔记——-7.2、访问限制
查看>>
【Python】学习笔记——-7.3、继承和多态
查看>>
【Python】学习笔记——-7.5、实例属性和类属性
查看>>
git中文安装教程
查看>>
虚拟机 CentOS7/RedHat7/OracleLinux7 配置静态IP地址 Ping 物理机和互联网
查看>>
Jackson Tree Model Example
查看>>
常用js收集
查看>>
如何防止sql注入
查看>>
springmvc传值
查看>>
在Eclipse中查看Android源码
查看>>
Android使用webservice客户端实例
查看>>
[转]C语言printf
查看>>
C 语言学习 --设置文本框内容及进制转换
查看>>
C 语言 学习---判断文本框取得的数是否是整数
查看>>
C 语言 学习---ComboBox相关、简单计算器
查看>>
C 语言 学习---ComboBox相关、简易“假”管理系统
查看>>