1、循环结构-for语句(第十三课时)年年 级:高一级:高一 学学 科:信息技术(人教科:信息技术(人教/中图版)中图版)1高中信息技术课前准备2 Python编程环境 运行Spyder,进入编辑界面1 学生资源素材 准备好本课学生资源中的任务单。任务一 在机器人比赛中,需要设置如图的运行轨道,请同学们参考任务单中的学习材料,编程实现画10个同切圆的轨道图形,如图所示,圆的半径分别为(50,55,60,65,70,75,80,85,90,95)1.展示代码import turtle#导入turtle库t=turtle.Turtle()t.hideturtle()t.circle(50)t.circ
2、le(55)t.circle(60)t.circle(65)t.circle(70)t.circle(75)t.circle(80)t.circle(85)t.circle(90)t.circle(95)运行代码看效果特点?特点?import turtle#导入turtle库t=turtle.Turtle()t.hideturtle()t.circle(50)t.circle(55)t.circle(60)t.circle(65)t.circle(70)t.circle(75)t.circle(80)t.circle(85)t.circle(90)t.circle(95)for for 语语
3、句句任务二:任务二:请将下段代码输入到python编程平台,运行,看效果。import turtle#导入turtle库t=turtle.Turtle()t.hideturtle()for n in 50,55,60,65,70,75,80,85,90,95:t.circle(n)一、实践体验一、实践体验为什么两段代码能实现同样的效果?import turtle#导入turtle库t=turtle.Turtle()t.hideturtle()t.circle(50)t.circle(55)t.circle(60)t.circle(65)t.circle(70)t.circle(75)t.cir
4、cle(80)t.circle(85)t.circle(90)t.circle(95)import turtle#导入turtle库t=turtle.Turtle()t.hideturtle()for for n in 50,55,60,65,70,75,80,85,90,95:n in 50,55,60,65,70,75,80,85,90,95:t.circle(n)二、原理探秘:任务三:任务三:参考任务单的学习材料,分析任务二代码中for语句执行过程,并将分析结果填入流程图中。import turtle#导入turtle库t=turtle.Turtle()t.hideturtle()for
5、 n in 50,55,60,65,70,75,80,85,90,95:50,55,60,65,70,75,80,85,90,95:t.circle(n)否否是是循环结束后的语句循环结束后的语句n成功取到列表中下一个元素了?否否是是t.circle(n)(一)案例案例探究探究forfor语句执行过程语句执行过程为什么两段代码能实现同样的效果?import turtle#导入turtle库t=turtle.Turtle()t.hideturtle()t.circle(50)t.circle(55)t.circle(60)t.circle(65)t.circle(70)t.circle(75)t.
6、circle(80)t.circle(85)t.circle(90)t.circle(95)import turtle#导入turtle库t=turtle.Turtle()t.hideturtle()for for n in 50,55,60,65,70,75,80,85,90,95:n in 50,55,60,65,70,75,80,85,90,95:t.circle(n)(二)探究通用格式及通用执行过程(二)探究通用格式及通用执行过程 (2 2)案例)案例体验体验-明确概念:明确概念:for n in 50,55,60,65,70,75,80,85,90,9550,55,60,65,70,
7、75,80,85,90,95:t.circle(n)循环变量循环变量循环体循环体特点特点:重复执行循环体:重复执行循环体构成序列序列 1.1.通用格式:通用格式:(2 2)归纳)归纳通用格式:通用格式:forfor in :in :可为多条语句循环变量循环变量 序列序列循环体for n in 50,55,60,65,70,75,80,85,90,9550,55,60,65,70,75,80,85,90,95:t.circle(n)构成(二)探究通用格式及通用执行过程(二)探究通用格式及通用执行过程(二)探究通用格式及通用执行过程(二)探究通用格式及通用执行过程什么是序列:什么是序列:forfo
8、r n n in in 50,55,60,65,70,75,80,85,90,9550,55,60,65,70,75,80,85,90,95:t.circle t.circle(n)(n)有顺序顺序地组织在一起的数据元素的集合集合。序列的生成方式序列的生成方式(3 3)序列及生成方式序列及生成方式(二)探究通用格式及通用执行过程(二)探究通用格式及通用执行过程序列中元素可以是数值类型也可以是字符串类型序列中元素可以是数值类型也可以是字符串类型for n in 5050,5555,6060,6565,7070,7575,8080,8585,9090,9595:t.circle(n)a.列表直接生
9、成;列表直接生成;for n in 张明张明,王丽王丽 ,李刚李刚 ,董京华董京华:print(n)(二)探究通用格式及通用执行过程(二)探究通用格式及通用执行过程b.range()b.range()函数生成函数生成for i in range(range(50,100,5):print(i,end=“,”)实践体验:运行下列代码,看效果:(二)探究通用格式及通用执行过程(二)探究通用格式及通用执行过程 生成一个以初值开始,到终值之前结束的间隔是步长步长值值的连续变化的等差等差整数序列整数序列,注意这个序列不包括终值不包括终值。b.range()b.range()函数生成函数生成 在Pytho
10、n中,序列还有其他生成方式,如字典、元组等,在后续课程中学习。range(50,100,5)(50,100,5)(50,55,60,65,70,75,80,85,90,95)格式:格式:range(初值初值,终值终值,步长值步长值)(二)探究通用格式及通用执行过程(二)探究通用格式及通用执行过程2 2.通用执行过程通用执行过程循环变量成功取到序循环变量成功取到序列中下一个元素了?列中下一个元素了?循环体循环体循环结束循环结束后的语句后的语句循环结束循环结束后的语句后的语句否是t.circle(n)t.circle(n)否是n n成功取到列表成功取到列表中中下下一个元素了吗一个元素了吗?for语
11、句基本格式和执行过程for n in 序列序列:循环体循环体1.1.基本格式:基本格式:2.2.执行过程:执行过程:3 3.特点:特点:重复执行循环体重复执行循环体三、实际应用任务四:银行办理业务时,需要输入账号和密码,密码输入正确时方可登录系统继续办理所需业务;每次登录有3次试错机会,如果密码连续3次输入错误,账号将被锁死。请你编程实现上述需求。任务分解任务4-1:分析任务需求,在任务单中补充对应的算法流程图;任务分解任务4-2:根据算法流程图,在任务单中将所缺代码补充在横线上。creect=0passWord=123456_#_#请将补充代码写在横线上请将补充代码写在横线上 x=input
12、(password:)x=input(password:)if passWord=x:if passWord=x:creect=1creect=1 break#break#终止循环,执行循环语句后面的语句终止循环,执行循环语句后面的语句 else:else:print(print(密码不正确密码不正确,请重试请重试)if creect=1:print(欢迎登录北京银行)else:print(“密码输入超过限定次数,为了您的财产安全,账号已锁死,再见!)循环体 分析任务需求,在任务单中补充对应算法流程图。1.尝试完成任务4-12.分析讲评任务四:银行办理业务时,需要输入账号和密码,密码输入正确时
13、方可登录系统继续办理所需业务;每次登录有3次试错机会,如果密码连续3次输入错误,账号将被锁死。请你编程实现上述需求。(1)需求分析:2.如何得到循环变量所需的序列?for 循环变量循环变量 in 序列序列:循环体循环体3.为什么用这种生成序列的方式?1.循环变量是谁?根据算法流程图,在任务单中将所缺代码补充在横线上。1.尝试完成任务4-2creect=0passWord=123456_#_#请请将将所缺所缺代码补充在代码补充在横线上横线上 x=input(password:)x=input(password:)if passWord=x:if passWord=x:creect=1creect
14、=1 break#break#终止循环,执行循环语句后面的语句终止循环,执行循环语句后面的语句 else:else:print(print(密码不正确密码不正确,请重试请重试)if creect=1:print(欢迎登录北京银行)else:print(密码输入超过限定次数,为了您的财产安全,账号已锁死,再见!)循环体2.分析讲评:creect=0passWord=123456_#_#请将补充代码写在横线上请将补充代码写在横线上 x=input(password:)x=input(password:)if passWord=x:if passWord=x:creect=1creect=1 bre
15、ak#break#终止循环,执行循环语句后面的终止循环,执行循环语句后面的语句语句 else:else:print(print(密码不正确密码不正确,请重试请重试)if creect=1:print(欢迎登录北京银行)else:print(密码输入超过限定次数,为了您的财产安全,账号已锁死,再见!)for 循环变量 in 序列:循环体 for for i i in in 1,2,3:1,2,3:循环体i1,2,33.运行代码,看效果:问题:使用for语句解决实际问题时应考虑哪些要素?使用for语句解决实际问题的要素1.确定是否有重复的操作及重复的操作(循环体)是什么?2.确定循环变量是谁?3.
16、确定循环变量所需的序列怎么产生?for 循环变量循环变量 in 序列序列:循环体循环体四、拓展 你能说一说,生活中能用for语句编程实现的现象有哪些吗?五、小结forfor语句语句循环变量循环变量序列序列forfor语句语句基本基本格式格式forfor语句解决问题的要素语句解决问题的要素循环体循环体f for or 变量变量 in in 序列:序列:循环体循环体重复执行循环体重复执行循环体依次取序列中所有元素依次取序列中所有元素forfor语句语句执行执行过程过程及及特点特点六、课后练习#画同心圆画同心圆import turtlet=turtle.Turtle()t.hideturtle()t
17、.penup()t.goto(0,-50)t.pendown()t.circle(50)t.penup()t.goto(0,-80)t.pendown()t.circle(80)1.1.用用forfor语句简化下列程序,实现动画演示效果语句简化下列程序,实现动画演示效果t.penup()t.goto(0,-170)t.pendown()t.circle(170)t.penup()t.goto(0,-200)t.pendown()t.circle(200)t.penup()t.goto(0,-110)t.pendown()t.circle(110)t.penup()t.goto(0,-140)t.pendown()t.circle(140)2 2.补充程序,实现运行后的补充程序,实现运行后的效果:效果:李丽王海张瀚孙策程序运行后效果如下:程序运行后效果如下:names=”李丽”,”王海”,”张瀚”,”孙策”for_ in _:print(name)