(1)掌握循环结构中for语句的基本格式;
(2)学会运用for语句编写程序,解决问题。
学习重点:理解与掌握循环结构中for语句的基本语句格式。
学习难点:编写for语句代码,利用循环结构解决实际问题。
连网的计算机
前一节课已经学习利用while语句编写代码,实现红绿灯倒计时15s的程序。
Python语言提供了两种基本的循环结构语句:while语句和for语句。
思考:如何利用for循环语句来编写代码解决倒计时15s问题?
for语句的基本格式为:
for 循环变量 in 序列:
语句块
For语句每次从序列中取出一个元素赋值给循环变量(循环变量初值即为序列中的第一个元素值),当依次访问完序列中所有元素后,循环结束。
需要注意的是,for……in后面的冒号不能省略。
(1)循环变量
循环变量是for语句中的关键点,它是控制循环开始与结束的量。当它的值在某个限定范围内按规则变化时,循环重复执行;当它的值不在限定范围内时,循环结束。
思考:用for语句编写代码解决“倒计时15s”问题时,循环变量是什么?如何用代码表示?
2.序列
循环执行与否,取决于循环变量的值是否在限定的变化范围以内。在for语句中,循环变量的变化范围就是序列,循环变量依次访问序列中的元素,直到全部访问完毕,循环结束。因此,序列中的元素个数就是循环执行的次数。
思考:“倒计时15s”问题中,循环变量的变化序列是什么?如何用代码表示?
注意:回顾列表相关的知识。
3.语句块
for语句中的语句块,表示每一次循环时所要执行的算法过程。
思考:“倒计时15s”问题中,每一次循环所要执行的算法过程是什么?如何用代码表示?
该过程在while语句中已经编写实现,在此回忆并编写。
4.编写代码,实现算法
任务:打开“倒计时15s(for).py”,将代码补充完整,实现算法。
(1)观察代码,比较找出不同点。
序列表示有区别:for t in [15,14,13,12,11,10,9,8,7,6,5,4,3,2,1]:
for t in range(15,0,-1):
本程序中的序列有特征,数字形成一个等差数列,这种情况下可以用range()函数来表示这个序列。
微课1:Range()函数
(2)在Python语言中,可以使用函数range()返回一个等差整数序列,格式为:range(起始值,终值,步长)。
需要注意的是,生成的这个整数序列不包括终值,并且起始值和步长(序列中相邻两个元素之间的差)可以缺省,缺省时分别为0和1。
15s程序代码解释分析for语句中的序列运用:
起始值15,终值1,步长-1,
故表示为range(15,0,-1)
微课2:问题解决
情境:食堂每日将推出一款特价菜,每周一可在校园网查询系统中呈现本周特价菜谱。如图所示:
(1)问题:如何通过编写程序“智能菜谱”,实现一周特价菜谱的呈现?
(2)分析思考:
1.“智能菜谱”要解决的问题是什么?
2.描述“智能菜谱”的算法过程;
3.利用for语句编写代码,实现算法。
从网络上查找到的运动需要消耗的热量和运动类型及其运动时间有关,小明同学某个周末参加运动的时间如下图所示:
课后思考完成:编写程序计算这周末小明运动消耗热量总和为多少?
知识点及能力 | 学生自评 | 小组互评 |
掌握for循环语句 | 【1】【2】【3】【4】 | 【1】【2】【3】【4】 |
编写代码实现算法 | 【1】【2】【3】【4】 | 【1】【2】【3】【4】 |
小组讨论勇于发表意见 | 【1】【2】【3】【4】 | 【1】【2】【3】【4】 |
梳理并综合讨论观点 | 【1】【2】【3】【4】 | 【1】【2】【3】【4】 |
实践操作能力 | 【1】【2】【3】【4】 | 【1】【2】【3】【4】 |