|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
题目:可以输入三次密码,输入错误则输入次数减少一次并重新输入,如果输入包含*则不减少输入次数,重新输入。正确密码是FishC.com,输入正确则结束。
i=3
code=input('请输入密码: ')
while code != 'FishC.com':
if '*' in code:
input('密码中不能包含有“*”号!您还有'+str(i)+'次机会!请输入密码:')
else:
i=i-1
input('密码输入错误!您还有'+str(i)+'次输入机会!请输入密码:')
print('密码正确,进入程序······')
这个代码执行时如果第一次执行了 if后内容,随后的次数无论输入什么都显示if结果。如果第一次执行了else内容,随后无论输入什么都显示else结果。怀疑是while循环用错,求大佬解释为啥会出现这样的结果,谢谢!答案代码已经看过,但还是想看看这个有没救。
本帖最后由 zltzlt 于 2020-2-21 12:34 编辑
代码帮你改了:
- i = 3
- code = input('请输入密码: ')
- while i:
- if code == "FishC.com":
- print('密码正确,进入程序······')
- break
- if '*' in code:
- code = input('密码中不能包含有“*”号!您还有' + str(i) + '次机会!请输入密码:')
- else:
- i = i - 1
- code = input('密码输入错误!您还有' + str(i) + '次输入机会!请输入密码:')
复制代码
|
|