循环结构
1.内置函数range()
-
用于生成一个整数序列
-
创建range函数的三种方式:
-
返回值是一个迭代器对象
-
range函数的优点:不管range函数表示的整数序列有多长,所有range对象占用的内存空间都是相同的,因为仅仅需要存储start,stop和step,只有当用到range对象时,才会去计算序列中的相关元素
-
in和not in判断整数序列中存在(不存在)指定的整数
下图为内置函数的示意图:
2.while循环
-
语法结构
while 条件表达式
条件执行体(循环体)
-
选择结构的if和循环结构的while的区别
·if是判断一次,条件为True执行一次
·while是判断n+1次,条件为True执行n次
(图片转载网络)
while循环的执行流程
四步循环法
1.初始化变量
2.条件判断
3.条件执行体(循环体)
4.改变变量
(图片转载网络)
我们进行一个“计算0到4之间的累加和”示例:
而它的执行流程是这样的:
我们了解了while循环的执行流程后,就可以做一些简单的练习题了
做一下“计算1到150之间的偶数和”的练习题
操作流程如下:
3.for-in循环
-
for-in循环
in表示从(字符串,序列等)中依次取值,又称为遍历。
for-in遍历的对象必须是可迭代对象(如字符串,序列等)。
-
for-in的语法结构
for 自定义的变量 in 可迭代对象:
循环体
-
for-in的执行图
(图片转载网络)
- 循环体内不需要访问自定义对象,可以将自定义变量替代为下划线
先写一串代码
如上图所示,从字符串中依次取值。
in也可以在序列中取值
-
**如果在循环体中不需要使用到自定义变量,可以将自定义变量写成”_“
当然,我们也可以用for循环进行一些计算
4.流程控制语句 break
-
break语句
- 用于结束循环结构,通常与分支结构if一起使用
(图片转载网络)
我们举一个输入密码的例子
如上图我们使用的是for-in循环,
倘若我们使用while循环,
还是录入密码这个程序
5.流程控制语句continue
-
用于结束当前循环,进入下一次循环,通常与分支结构中的if一起使用。
如下图所示
(图片转载网络)
我们亦是用示例来说明。
要求输出1到50之间所有5的倍数
6.else语句
话不多说,直接上图
我们依旧举”请输入密码“的例子
分别用for-in循环和while循环来演示
- for-in循环
-
while循环
7.嵌套循环
-
循环结构中又嵌套了另外的完整的循环结构,其中内层循环作为外层循环的循环体执行。
我们仍旧是用图来说明问题
任务要求:用*输出一个三行四列的矩形
矩形我们会打了,那么三角形呢?
三角形的话,*在第一行内循环执行一次,在第二行内循环执行两次…以此类推
我们学会了三角形,那么九九乘法口诀表不也是手到擒来嘛?