编写一个Python程序,判断登陆用户名和密码是否正确,具体要求如下:用户名和密码保存在一个字典里;用户输入用户名,如果用户名不在字典里,则输出提示“系统里没有查询到该用户,请重新输入用户名!”如果用户名在字典中,就要求输入密码,如果密码输入正确,则输出提示“恭喜你!你通过了身份验证。”如果用户名在字典中,就要求输入密码,如果密码输入不正确,则输出提示“对不起,你输入的密码错误,请再输入,你还有*次机会”(*表示剩余次数),然后返回重新输入密码。如果密码输入错误超过3次,则输出提示“很遗憾!你输入的密码错误已经超过3次,请明天再试或联系工作人员!”。
时间: 2023-11-12 15:03:39 浏览: 78
可以尝试以下代码实现:
```python
user_dict = {'user1': 'password1', 'user2': 'password2', 'user3': 'password3'}
def login():
username = input("请输入用户名:")
if username not in user_dict:
print("系统里没有查询到该用户,请重新输入用户名!")
login()
else:
password = input("请输入密码:")
count = 3 # 剩余次数
while True:
if password == user_dict[username]:
print("恭喜你!你通过了身份验证。")
break
else:
count -= 1
if count == 0:
print("很遗憾!你输入的密码错误已经超过3次,请明天再试或联系工作人员!")
break
else:
print("对不起,你输入的密码错误,请再输入,你还有{}次机会".format(count))
password = input("请输入密码:")
login()
```
其中,我们定义了一个字典`user_dict`保存用户名和密码,函数`login()`用于进行用户登录操作。首先输入用户名,如果用户名不在字典中,则输出提示并重新调用`login()`函数;如果用户名在字典中,则要求输入密码。
然后进入一个循环,判断密码是否正确。如果密码正确,则输出提示并跳出循环;如果密码不正确,则剩余次数减1,如果剩余次数为0,输出提示并跳出循环,否则输出提示并重新输入密码。
阅读全文