需求:
如果一次输入成功则登录成功
如果输入三次失败则询问是否还需要重新登录
若重新登录则从新开始执行,若不输入yes则跳出循环结束运行
具体实现方式如下
username = 'tank' password = '123' i = 0 while i<3: name = input('请输入名字:') pwd = input('请输入密码:') if name == username and pwd == password: print('恭喜您登录成功') break else: print('您还有 %d次输入机会' %(2-i)) if (2-i) == 0: result = input('是否需要重新尝试?yes') if result == 'yes': I = 0 continue i+=1 else:print('请下次再尝试登录!谢谢!')
如果依次输入tank和123则登录成功,如下:
请输入名字:tank 请输入密码:123 登录成功 Process finished with exit code 0
如果连续三次输入错误会被询问是否需要重新尝试
请输入名字:12 请输入密码:12 登录失败,您还有 2次机会 请输入名字:12 请输入密码:12 登录失败,您还有 1次机会 请输入名字:12 请输入密码:12 登录失败,您还有 0次机会 是否还要输入?yes:
此时如果输入yes则会回到i=0重新开始,如果输入其他或者不输入直接回车则会跳出循环之外,如下:
请输入名字:12 请输入密码:12 登录失败,您还有 2次机会 请输入名字:12 请输入密码:12 登录失败,您还有 1次机会 请输入名字:12 请输入密码:12 登录失败,您还有 0次机会 是否还要输入?yes: 请下次再尝试登录!谢谢! Process finished with exit code 0