定义:循环结构就是重复执行某段代码块
使用循环结构的原因:模仿人类做重复做某件事情
while的运行步骤: 步骤1:如果条件为真,那么依次执行:代码1、代码2、代码3、...... 步骤2:执行完毕后再次判断条件,如果条件为True则再次执行:代码1、代码2、代码3、......,如果条件为False,则循环终止 # 纯计算无io的死讯会导致致命的效率问题2、输对了应该不用再重复
# 方式一:将条件改为False,等到下次循环判断条件时才会生效
tag = False# 之后的代码还会运行,下次循环判断条件时才生效
# 方式二:break,只要运行到break就会立刻终止本层循环
4、while循环嵌套与结束
# 每一层都必须配一个break break# 用于结束本层循环,即第二层循环 break # 用于结束本层循环,即第一层循环强调:在continue之后添加同级代码毫无意义,因为永远无法运行
# print('else包含的代码会在while循环结束后,并且while循环是在没有被break打断的情况下正常结束的,才不会运行')# 如果执行过程中被break,就不会执行else的语句
打印结果:0 ,1,2,3
案例:输错三次密码退出
for循环:循环结构的第二种实现方式
使用for循环的原因:在循环取值(即遍历值)时for循环比while循环的使用更为简洁,
for 变量名 in 可迭代对象: # 可迭代对象可以是字符串\列表\字典\元组\集合
# 参照例1来介绍for循环的运行步骤
# 步骤1:从列表['a','b','c']中读出第一个值赋值给item(item=‘a’),然后执行循环体代码
# 步骤2:从列表['a','b','c']中读出第二个值赋值给item(item=‘b’),然后执行循环体代码
# 步骤3: 重复以上过程直到列表中的值读尽
案例1 打印数字0-5
# 简单版:for循环的实现方式
# 复杂版:while循环的实现方式
# 复杂版 :while可以遍历字典,但过于麻烦
案例3:字符串循环取值
1、相同之处:都是循环,for循环可以干的事,while循环也可以干
while循环称之为条件循环,循环次数取决于条件何时变为假
for循环称之为"取值循环",循环次数取决in后包含的值的个数
in后直接放一个数据类型来控制循环次数有局限性:当循环次数过多时,数据类型包含值的格式需要伴随着增加
print('输错账号密码次数过多')1、for搭配range,可以按照索引取值,但是麻烦,所以不推荐
for循环嵌套:外层循环循环一次,内层循环需要完整的循环完毕
补充:终止for循环只有break一种方案