Python编写一个程序,用户输入密码,密码长度必须大于等于8位,如果密码满足10位以上,数字、大写字母、小写字母、标点符号中一种可以加1分,总计5分,1-5分依次对应密码安全等级为弱,较弱,中,较强和强,使用数字和星号输出密码等级。
时间: 2023-10-03 11:06:52 浏览: 361
Python项目开发实战-密码学之编写加密程序-编程案例解析实例详解课程教程.pdf
以下是一个简单的Python程序实现:
```python
import re
password = input("请输入密码:")
# 判断密码长度是否大于等于8位
if len(password) < 8:
print("密码长度必须大于等于8位")
else:
# 判断密码是否含有数字、大写字母、小写字母、标点符号中的一种
score = 0
if re.search(r'\d', password):
score += 1
if re.search(r'[A-Z]', password):
score += 1
if re.search(r'[a-z]', password):
score += 1
if re.search(r'[^\da-zA-Z]', password):
score += 1
# 根据得分输出密码等级
if score == 1:
print("密码等级:弱 *")
elif score == 2:
print("密码等级:较弱 **")
elif score == 3:
print("密码等级:中 ***")
elif score == 4:
print("密码等级:较强 ****")
else:
print("密码等级:强 *****")
```
这个程序使用了正则表达式判断密码中是否含有数字、大写字母、小写字母、标点符号中的一种,然后根据得分输出相应的密码等级。使用星号输出密码等级,星号的个数代表密码等级的分数。
阅读全文