编写程序,要求用户输入一个密码,然后要求再次输入以便确认。如果两次密码不一致或不符合下面的规则,就再次提示输入,直到输入正确,退出程序。 实现要求: 编写函数checkcode,
时间: 2024-04-30 11:24:20 浏览: 110
根据一个帖子做的程序(密码输入问题)
可以验证密码是否符合以下规则:
1. 密码长度在6-20个字符之间
2. 密码只能包含字母、数字和特殊符号(如 !@#$%^&*()_+-=[]\{}|;':",./<>?)
3. 密码至少包含一个大写字母、一个小写字母和一个数字
程序如下:
```python
import re
def checkcode():
while True:
password = input("请输入密码:")
if re.search(r'^[a-zA-Z0-9!@#$%^&*()_+-=[]\\{}|;\':",./<>?]{6,20}$', password):
if re.search(r'[a-z]', password) and re.search(r'[A-Z]', password) and re.search(r'\d', password):
confirm_password = input("请再次输入密码:")
if confirm_password == password:
print("密码设置成功!")
break
else:
print("两次输入的密码不一致,请重新输入!")
else:
print("密码必须至少包含一个大写字母、一个小写字母和一个数字,请重新输入!")
else:
print("密码必须在6-20个字符之间,只能包含字母、数字和特殊符号,请重新输入!")
checkcode()
```
程序中使用了正则表达式来验证密码是否符合规则。如果不符合规则,会提示用户重新输入密码;如果符合规则但两次输入的密码不一致,也会提示用户重新输入密码。只有当密码符合规则且两次输入的密码一致时,才会退出程序。
阅读全文