### 循环结构 : while 循环
"""特征:减少代码冗余,提升代码效率"""
"""
语法:
while 条件表达式:
code1
code2
...
1.初始化一个变量
2.写上循环的条件表达式
3.自增自减的变量值
"""
打印1~100
i = 1
while i<=100:
# 要执行的逻辑 ...
print(i)
i += 1
"""
初始化一个变量 i
第一次循环:
i <= 100 条件成立,执行循环
直接打印 print(i) => 1
i += 1 => i = 2
第二次循环:
回到17行,重新回到判断,看一看是否满足条件
2 <= 100 条件成立,执行循环
直接打印 print(i) => 2
i += 1 => i = 3
第三次循环:
回到17行,重新回到判断,看一看是否满足条件
3 <= 100 条件成立,执行循环
直接打印 print(i) => 3
i += 1 => i = 4
...
...
依次类推进行循环 ...
到什么时候结束?
当打印100 结束之后
i += 1 => i = 101 回到循环的判断条件中
发现101 <= 100 不满足条件,不成立,不执行循环体代码块
到此为止,循环直接结束.
"""
打印1~100的累加和?
1+2+3+4+ .....+100 ?
方法一
total 负责做累加和
total = 0
i = 1
while i<=100:
total += i
i+=1
print(total)
"""
代码解析:
第一次循环:
1 <= 100 条件为真 , 执行循环
total += i => total = total + i => total = 0 + 1
i+=1 => i=2
第二次循环:
回到条件表达式中进行判断
2<=100 条件为真 , 执行循环
total += i => total = total + i => total = 0 + 1 + 2
i+=1 => i=3
第三次循环:
回到条件表达式中进行判断
3<=100 条件为真 , 执行循环
total += i => total = total + i => total = 0 + 1 + 2 + 3
i+=1 => i=4
...
...
依次循环
什么时候结束?
total = 0 + 1 + 2 + 3 + ... + 100
i+=1 => i = 101
回到条件表达式中进行判断
101 <= 100 条件不成立,不执行循环体;
直接终止循环;
print(total) 5050
"""
死循环
"""
while True:
print(123)
"""
方法二
1+2+3+4+ .....+100 ? 用while True 的方式实现;
total = 0
i = 1
sign = True
while sign:
total += i
i+=1
# 手动加上终止的条件
if i == 101:
sign = False
print(total)
这种情况下就不执行循环了;用这样的方式终止循环;
while False: print(111)