H9 三次密码
设计一个验证用户密码程序,用户只有三次机会输入错误,不过如果用户输入的内容中包含"*"则不计算在内。count = 3
password = 'FishC.com'
while count:
passwd = input('请输入密码:')
if passwd == password:
print('密码正确,进入程序......')
break
elif '*' in passwd:
print('密码中不能含有"*"号!您还有', count, '次机会!', end=' ')
continue
else:
print('密码输入错误!您还有', count-1, '次机会!', end=' ')
count -= 1
上面是作业9动动手第一题的答案,如果题目要改为最后一次机会错误后打印,“密码四次错误,请联系管理员”。这个后面怎么改呢?谢谢高手!!! 思路:
最后一次打印也就是count=0时,所以把循环进入条件改成当count不等于0,当count=0时执行循环外语句
代码如下:
count = 3
password = 'FishC.com'
while count != 0:
passwd = input('请输入密码:')
if passwd == password:
print('密码正确,进入程序......')
break
elif '*' in passwd:
print('密码中不能含有"*"号!您还有', count, '次机会!', end=' ')
continue
else:
print('密码输入错误!您还有', count-1, '次机会!', end=' ')
count -= 1
print("密码四次错误,请联系管理员") 太阳总会升起 发表于 2020-10-31 21:52
思路:
最后一次打印也就是count=0时,所以把循环进入条件改成当count不等于0,当count=0时执行循环外语句 ...
您这个运行后还是打印“密码输入错误!您还有 0 次机会! 密码四次错误,请联系管理员”,我希望打印“密码四次错误,请联系管理员”。如何修改呢? rychair 发表于 2020-11-2 22:27
您这个运行后还是打印“密码输入错误!您还有 0 次机会! 密码四次错误,请联系管理员”,我希望打印“密 ...
就是说最后一次错误不打印还有0次机会,只打印联系管理员
加了一个if判断,判断当前机会如果不是0,就打印还剩的机会数,如果是0,就打印联系管理员
代码如下:
count = 3
password = 'FishC.com'
while count:
passwd = input('请输入密码:')
if passwd == password:
print('密码正确,进入程序......')
break
elif '*' in passwd:
print('密码中不能含有"*"号!您还有', count, '次机会!', end=' ')
continue
if count-1 != 0:
print('密码输入错误!您还有', count-1, '次机会!', end=' ')
else:
print("密码四次错误,请联系管理员")
count -= 1
关于if判断是count-1,while循环最后一次机会就是count=1的时候,所以count-1,也就是if=0打印联系管理员
页:
[1]