python中用正则表达式检查密码是否安全

简介:

目的:通过正则表达式检查密码是否强大,这个方法在需要注册网页上应该很常用。


环境:ubuntu 16.04  python3.5


思路:需要多个正则表达式,依次检查输入的密码是否符合要求,可以if或者for配合。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import  re
 
# 密码至少8位数
rule_1  =  re. compile (r '\w{8,}' )
# 密码同时包含大小写字母
rule_2  =  re. compile (r '([a-z].*[A-Z])|([A-Z].*[a-z])' )
# 密码至少有一位数字
rule_3  =  re. compile (r '\d' )
# 密码不符合要求的显示
NO  =  u '输入的密码不够强壮!'
# 密码符合要求的显示
YES  =  u '输入的密码很结实!'
 
print (u '请输入密码:' )
passwd  =  input ( '>' )
 
if  rule_1.search(passwd)  = =  None :
     print (NO)
elif  rule_2.search(passwd)  = =  None :
     print (NO)
elif  rule_3.search(passwd)  = =  None :
     print (NO)
else :
     print (YES)

这个就是主要部分了,还可以添加特殊字符检查,或者尝试用for循环写也许更简短一点。


















本文转自RickyHuL51CTO博客,原文链接:http://blog.51cto.com/rickyh/1941543 ,如需转载请自行联系原作者




相关文章
|
26天前
|
数据安全/隐私保护 Python
1178: 密码翻译(python)
1178: 密码翻译(python)
|
2月前
|
编译器 Python
Python正则表达式的7个使用典范(推荐)
Python正则表达式的7个使用典范(推荐)
25 0
|
8天前
|
安全
python_threading多线程、queue安全队列
python_threading多线程、queue安全队列
15 2
|
7天前
|
人工智能 安全 数据安全/隐私保护
Python中多种生成随机密码超实用实例
Python中多种生成随机密码超实用实例
8 0
|
10天前
|
数据安全/隐私保护 Python
Python正则表达式:强大的文本处理工具
Python正则表达式:强大的文本处理工具
10 1
|
11天前
|
存储 数据安全/隐私保护 Python
python批量压缩文件并生成解压密码
该教程指导安装Python库`py7zr`以处理7z压缩文件。接着,提供了一个Python脚本,该脚本遍历指定目录,对每个文件创建加密的7z压缩包,并为每个文件生成独特密码,密码存储在文本文件中。要运行脚本,将其保存为`.py`文件并在命令行使用`python`命令执行。注意,路径需根据操作系统调整,且应使用原始字符串避免`\`的转义问题。
13 0
|
11天前
|
SQL 存储 安全
Python安全编程面试:常见安全漏洞与防范措施
【4月更文挑战第19天】本文介绍了Python安全编程面试中的关键点,包括SQL注入、XSS攻击、命令注入、认证授权问题和密码安全。强调了理解安全漏洞原理、识别易受攻击的代码及采取防范措施的重要性。例如,使用参数化查询防止SQL注入,对用户输入进行HTML转义以防御XSS,通过列表形式传递命令参数避免命令注入,妥善管理认证凭据和采用强密码哈希策略。掌握这些知识能提升面试者的安全编程能力。
19 2
|
13天前
|
Python
Python中的正则表达式以及如何使用它们进行文本处理
正则表达式(Regex)是处理字符串的利器,Python通过`re`模块支持Regex操作,包括匹配模式(`re.match()`),查找模式(`re.search()`),替换内容(`re.sub()`),分割内容(`re.split()`),分组提取(使用括号)以及利用特殊字符创建复杂模式。学习和熟练掌握正则表达式能有效提升文本处理效率。
9 1
|
14天前
|
Python
请解释Python中的正则表达式以及如何使用它们进行文本处理。
正则表达式(Regex)是处理字符串的工具,Python通过`re`模块支持Regex操作,如匹配、查找、替换和分割文本。`re.match()`检查字符串是否以指定模式开始,`re.search()`查找模式,`re.sub()`替换匹配内容,`re.split()`按模式分割字符串。使用括号进行分组提取,特殊字符如`.`、`*`、`+`、`?`、`^`和`$`可创建复杂模式。熟练掌握正则表达式需学习和实践。
11 0
|
26天前
|
安全 数据安全/隐私保护 Python
292: 程序设计C 实验五 题目三 设计密码(python)
292: 程序设计C 实验五 题目三 设计密码(python)