Python基础之流程控制while循环

1. 语法

最简单的while循环如下:

'''
while <条件>:
<代码块>
<代码块>
'''
user_name = 'admin'
user_pwd = '123'
while True:
login_name = input("请输入用户名:")
login_pwd = input("请输入密码:")
if login_name == user_name and login_pwd == user_pwd:
print("登录成功!")
else:
print("登录失败,请重新输入。")

本段代码提示用户输入用户名和密码登录,如果输入成功,则提示登录成功,如果输入错误,则提示登录失败,请重新输入,但问题是几十登录成功,也是让你继续输入。

2. while+break

为了解决1.1中的问题,我们将上述代码按while+break的格式改进,具体如下:

'''
while <条件>:
<代码块>
break
<代码块>
'''
user_name = 'admin'
user_pwd = '123'
while True:
login_name = input("请输入用户名:")
login_pwd = input("请输入密码:")
if login_name == user_name and login_pwd == user_pwd:
print("登录成功!")
break
else:
print("登录失败,请重新输入。")

break会终止当前循环,并执行循环后的代码,所以当我们登录成功后,循环不再进行,程序结束。

3. while+continue

continue的意思是结束本次循环,继续进行下次循环,可以从下面的代码比较continue与break的不同之处:

# 输入数字,当输入为偶数时结束
while True:
choice = int(input("请输入数字:")) #输入字符串,并转换为整型
if choice % 2 == 0: # 输入偶数,结束循环
break
else: # 输入奇数,继续下次循环
continue print("结束")

4. while+else

else会在while中没有被break时才会执行else中的代码,具体可参考下面的例子:

# while+else
n = 1
while n < 3:
print(n)
n += 1
else:
print('else会在while没有被break时才会执行else中的代码')

执行结果为:

1
2
else会在while没有被break时才会执行else中的代码
上一篇:如何将UISearchBar上"Cancel"按钮改为”取消“?


下一篇:Java面试问题列表