count: int = 0       #也可以去掉【:int】,作用是解释说明。                   
a = 'rrr'                            
b = 123                              
while count < 5:                     
    name = input('用户名:')             
    if name == a:                    
        print('用户名正确;请继续输入密码')       
    else:                            
        count += 1                   
        x = 5 - count                
        print(f"还有{x}次输入机会")         
        continue                    #这个continue是阻止继续往下运行,返回到起点运行,直到 
                                    #输入正确,才能继续往下运行代码。 
    passwd = input('密码:')            
    if passwd == '123':              
        print('登录成功')                
        break                      #由于输入正确,必须停止代码运行。break含义就是完全停代 
                                   #码运行   
    else:                            
        count += 1                   
        x = 5 - count                
        print(f"还有{x}次输入机会")         
else:                                
    print('登录次数超过次数')       


#第一个else下的代码可以修改为如下:
#代码含义是输入密码错误要从新 输入用户名开始。而不是从输入密码
#print('登录失败')                          
#print('您还剩余%d次机会' % (5 - count))    
#count += 1                                   

continue更像是跳过符合的,继续循环运行。

break 完全停止。如同点击了编辑器的【停止】按钮。

也可以将while循环不计数,一直到 用户名+密码 都正确,才停止运行。把【while count < 5:】计数去掉改为【while True:】。

用2个代码更好理解【continue,break】:

for val in "00377":
    if val == "3":
        continue
    print(val)

结果是:
0 
0 
7 
7
for val in "00377":
    if val == '3':
        break
    print(val)

结果
0
0

00377这5个字符:continue,break相同点:都是到3就不打印;不同之处:continue继续循环。而break,停止运行了。

有时文字讲解不如代码直观,有时代码更容易让人理解。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐