目录
for 循环用于针对集合中的每一个元素的一个代码块,而while循环不断地运行,直到指定的条件不满足
1. 格式
while condition:
statements
num = 1
sum = 0
while num <= 5:
sum = num + sum
num = num + 1
print(sum)
输出 : 15
2. 退出循环
2.1 使用标志位
使用 True 或 False 作为标志位进行条件判断,可以减少代码的运算量,使代码更加简洁
active = True
while active:
mess = input("please input num: ")
if mess == "quit" :
active = False
else:
print(mess)
please input num: dfs
dfs
please input num: grg
grg
please input num: quit
Process finished with exit code 0
2.2 使用 break 退出循环
执行 break 语句,立刻跳出 while 循环体,不在执行while语句内的内容,执行while之后的语句
num = 0
sum = 0
while num <= 10:
num = num + 1
if num == 5:
break
sum = num + sum
print(sum)
输出: 10
2.3 使用 continue 语句跳出循环
continue 语句与 break 语句有区别,continue 语句是跳出条件判断的本层循环,break 是退出整个循环
num = 0
sum = 0
while num <= 10:
num = num + 1
if num == 5:
continue
sum = num + sum
print(sum)
输出: 61
3. 用 while 处理列表和字典
#列表应用
stu = ['food','fruit','vegetable','moon']
stu1 = []
while stu: # stu 列表不为空
stu1.append(stu.pop()) # pop() 列表的尾删函数,append() 列表的尾插函数
print("stu = " ,stu,'\t',"stu1 = ",stu1,'\n')
while 'fruit' in stu1: # 在 stu1 列表中找到 'fruit'后
stu1.remove('fruit') # 删除 stu1 的 'fruit'
print("stu = " ,stu,'\t',"stu1 = ",stu1,'\n')
stu = [] stu1 = ['moon', 'vegetable', 'fruit', 'food']
stu = [] stu1 = ['moon', 'vegetable', 'food']
alien = {}
active = True
while active:
key = input("please input key: ")
val = input("please input val: ")
alien[key] = val
repeat = input("Would you like continue? Answer yes or no. ")
if repeat == 'yes' or repeat == 'Yes' or repeat == 'YES':
active = True
elif repeat == 'no' or repeat == 'No' or repeat == 'NO':
active = False
else:
print("input error")
active = False
print("alien = ",alien)
please input key: food
please input val: beef
Would you like continue? Answer yes or no. yes
please input key: fruit
please input val: apple
Would you like continue? Answer yes or no. Yes
please input key: vegatable
please input val: fruit
Would you like continue? Answer yes or no. No
alien = {'food': 'beef', 'fruit': 'apple', 'vegatable': 'fruit'}