python编写一个登录验证程序,要求∶ 1)输入用户名和密码; 2)认证成功显示登录信息; 3)同一用户输错3次密码后被锁定,并退出程序。 注意:用字典存放用户的姓名和密码信息
时间: 2024-03-05 17:49:42 浏览: 549
以下是一个简单的登录验证程序的代码实现:
```python
users = {'user1': 'password1', 'user2': 'password2', 'user3': 'password3'}
for i in range(3):
username = input('请输入用户名:')
password = input('请输入密码:')
if username in users and users[username] == password:
print('登录成功!')
break
else:
print('用户名或密码错误,请重新输入。')
else:
print('密码错误次数超过3次,账户已被锁定。')
```
首先,我们定义了一个字典 `users`,用于存放用户的姓名和密码信息。然后,使用 `for` 循环来限制用户最多只能输错3次密码。在每一次循环中,用户需要输入用户名和密码,程序会检查输入的用户名是否在字典 `users` 中,并且密码是否和对应的值匹配。如果匹配成功,则显示登录成功的信息并跳出循环;否则,提示用户名或密码错误,并继续循环。如果循环结束后仍然没有匹配成功,则提示用户账户已被锁定。
相关问题
(1) 编写一个登录验证程序,要求: 输入用户名和密码; 认证成功显示登录信息; 同一用户输错3次密码后被锁定,并退出程序。Python
代码如下:
```python
username = input("请输入用户名:")
password = input("请输入密码:")
count = 0
while True:
if username == "admin" and password == "123456":
print("登录成功!")
break
else:
count += 1
if count >= 3:
print("密码错误超过3次,账户已被锁定!")
break
else:
print("用户名或密码错误,请重新输入!")
username = input("请输入用户名:")
password = input("请输入密码:")
```
说明:
1. 通过 `input` 函数获取用户输入的用户名和密码。
2. 进入 `while` 循环,判断用户名和密码是否正确。
3. 如果正确,打印登录成功的信息,并使用 `break` 语句跳出循环。
4. 如果不正确,累加错误次数,如果错误次数超过 3 次,打印账户已被锁定的信息,并使用 `break` 语句跳出循环。
5. 如果错误次数不超过 3 次,打印用户名或密码错误,请重新输入的信息,并使用 `input` 函数重新获取用户名和密码。
编写一个登录验证程序,要求∶ 1)输入用户名和密码; 2)认证成功显示登录信息; 3)同一用户输错3次密码后被锁定,并退出程序。 注意:用字典存放用户的姓名和密码信息
好的,这是一个基于 Python 的登录验证程序,使用了字典存储用户名和密码信息,实现了输入用户名和密码的认证功能,同时还增加了输错三次密码后锁定账户的功能:
```python
user_info = {"user1": "password1", "user2": "password2", "user3": "password3"} # 存放用户信息的字典
login_count = {} # 存放用户登录次数的字典
while True:
username = input("请输入用户名:")
password = input("请输入密码:")
if username in user_info:
if password == user_info[username]:
print("登录成功!")
break # 登录成功,退出循环
else:
if username in login_count:
login_count[username] += 1
else:
login_count[username] = 1
if login_count[username] >= 3:
print("密码错误次数过多,账户已被锁定!")
break # 输错三次密码,锁定账户,退出循环
else:
print("密码错误,请重新输入!")
else:
print("用户名不存在,请重新输入!")
```
以上程序首先定义了一个字典 `user_info` 存放用户的姓名和密码信息,然后定义了一个字典 `login_count` 存放用户的登录次数。接下来进入一个无限循环,要求用户输入用户名和密码。如果输入的用户名存在,则进一步判断输入的密码是否与存储的密码匹配。如果匹配,则输出登录成功并退出循环;如果不匹配,则将对应用户的登录次数加 1,如果错误次数超过 3 次,则输出密码错误次数过多,账户已被锁定并退出循环。如果输入的用户名不存在,则输出用户名不存在,请重新输入。