实现Python用户登录三次错误即退出的功能,推荐以下两种方法:
一、使用for
循环控制尝试次数(推荐)
通过for
循环限制用户输入次数,结合break
语句控制流程。以下是典型实现:
username = 'ce'
password = 'abc123'
for i in range(3): # 允许3次尝试
user = ("请输入账号: ")
passwd = input("请输入密码: ")
if user == username and passwd == password:
print(f"Welcome {user} login.")
break # 输入正确,退出循环
else:
print(f"错误: {i+1}次/3次")
if i == 2: # 第三次错误
print("3次输入错误,程序退出。")
break # 退出循环
说明 :
-
使用
for i in range(3)
循环控制最多3次输入机会。 -
每次输入后判断用户名和密码是否匹配,匹配则打印欢迎信息并退出循环。
-
若3次均失败,打印错误提示后退出循环。
二、使用while
循环和计数器实现
通过while
循环结合计数器控制尝试次数,适用于需要更灵活控制的场景:
user = "zhangjinglei"
password = "lei100103"
count = 0
max_attempts = 3
while count < max_attempts:
username = input("username: ")
password = input("password: ")
if username == user and password == password:
print("Welcome login.")
break # 输入正确,退出循环
else:
print(f"错误: {count+1}次/3次")
count += 1
if count == max_attempts:
print("3次输入错误,程序退出。")
break # 退出循环
说明 :
-
使用
while count < max_attempts
循环控制尝试次数。 -
每次输入后判断是否正确,正确则打印欢迎信息并退出循环。
-
若达到最大次数仍未成功,打印错误提示后退出循环。
注意事项
-
代码结构 :两种方法均需确保在输入正确时及时退出循环,避免无限循环。
-
扩展性 :若需记录失败次数或锁定用户,可结合文件操作(如
open
函数)实现。 -
安全性 :实际应用中应避免明文存储密码,建议使用哈希算法。