show | version | enable_checker |
---|---|---|
step |
1.0 |
true |
- 上次研究了条件分支相关的
- 有各种分支情况
- 比较运算符
- 逻辑运算符
- 位运算符
- 最后还做了一个主动防御
- 现在我们了解了两种程序结构
- 顺序结构
- 从上到下依次执行
- 一条笔直的大马路
- 一路畅行无阻
- 分支结构是指当程序执行到某步时
- 需根据实际情况选择性的执行某部分代码
- 就如同生活中的十字路口
- 不可能同时走多条路
- 顺序结构
- 还有什么结构呢?🤔
- 想要 输出
- 从 0 到 10 的数字
- 应该怎么办呢?
- 直接的想法是
- 这确实可以
- 但是如果要循环一千次
- 要怎么办呢?
- 你说你有毅力?🤭
- 那好吧
- 我们要数到十万次
- 如果是 上亿次
- 这就不是 毅力的问题了
- 这是大脑有问题了
- 这个情况下
- 用
while循环
就简单了
- 用
i = 1
while i<= 10:
print(i)
i = i + 1
- 注意
- 循环的开始条件 i = 1
- 循环条件 i <= 10
- 这个和 if 有点像
- if 是 满足条件
- 进入 条件体
- while 是 满足条件
- 进入 循环体
- 而且 循环体
- 执行完了 之后
- 还要 再次判断
- 执行完了 之后
- if 是 满足条件
-
真的可以循环十万次么?😲
- 试试!!!
-
这个程序可以调试吗?
- 从开头进去
- 进入循环
- 执行到最后一行
- 然后会发生什么呢?
- 再次进入循环
- 准备设置 条件断点
- 当i等于11时
- 在第二行停下
- 现在i等于11
- 循环条件为False
- 能否进入循环呢?
- 跳出循环
- 程序 返回(return)
-
注意循环的条件改了
- 原来的 10 次变成了 10 万次
-
运行起来还要一会儿时间
i = 1
while i<= 10**5:
print(i)
i = i + 1
- 具体需要多久呢?
import time
start = time.time()
i = 1
while i<= 10 ** 5:
print(i)
i = i + 1
end = time.time()
print(end - start)
- 通过结束时间刨去开始时间
- 得到程序运行的时间
- 如果真的
- 数到一亿
- 要多久?
- 数到一亿
- 如果要数到
- 无穷大呢?
- 比 数到一亿 更过分的
- 是 数到 无穷大
- 可以直接来个 死循环 么?
import time
start = time.time()
i = 1
while True:
print(i)
i = i + 1
end = time.time()
print(end - start)
- 循环条件上
- 连判断都省了
- 直接给一个 True
- 永永远远地循环下去了 🙀🙀🙀
- 现实中
- 有这种情况么?
- 我们 能用死循环
- 做点什么好玩么?
- 这次见识到了python循环
- 就是重复地做某些事情
- 没完没了的死循环
- while True
- 就是 死循环
- 会没完没了地 播放下去
- 我们可以用 死循环 做出什么神迹吗??🤔
- 下次再说 👋