内容正文:
3.2 python语言程序设计 第3、4、5课时(教学设计)
年级
高一年级
授课时间
课题
3.2 python语言程序设计(第三、四、五课时)
教学
目标
1.了解用计算机解决问题的一般过程;
2.掌握分析问题、设计算法、编写程序、调试运行等步骤的具体内容和方法;
3.能够运用所学知识分析实际问题,并尝试用计算机解决简单问题,提升信息技术学科素养和对科技认同感;
教学
重难点
重点:掌握分析问题、设计算法、编写程序、调试运行等步骤的具体内容和方法。
难点:能够运用所学知识分析实际问题,并尝试用计算机解决简单问题。
教学
准备
多媒体课件、多媒体教室
教学过程
教师活动
学生活动
新
课
导
入
一、课堂导入
1.通过一个经典优秀农夫带狼、羊和蔬菜过河问题来引入本节课的主题。
经典算法之农夫带狼、羊和蔬菜过河问题:一个农夫要带着一条狼、一头山羊和一篮蔬菜过河,但只有一条小船。每次只能让农夫带一样东西过河,而且农夫在场的情况下三样东西将相安无事。一旦农夫不在,狼会吃羊,羊会吃蔬菜。请进行任务分析,帮助农夫安全地带这三样东西过河?
让同学们小组讨论,并展示方法一和方法二。
随后展示流程图:
问题描述:
假设本次项目有农夫(farmer)、狼(wolf)、羊(sheep)、蔬菜(vegetable)四个角色,农夫在场的情况下三样东西将相安无事。一旦农夫不在,狼会吃羊,羊会吃蔬菜。
要求:编写一个简单Python程序,判断状态是否安全?
分析算法
第1步:带羊过河--提示“安全”,否则提示“危险”
第2步:判断带菜还是带狼(分支判断)
①带菜,提示:“注意要保护好蔬菜哦!”
②带狼,提示:“注意要保护好羊哦!”
第3步:带羊回来--提示“安全”
第4步:提示“任务完成,全员安全过河!”
通过游戏和小组讨论的方式导入教学,激发学习热情和探究欲望。
新 知 讲 授
三、分支结构的程序实现
1.if 语句
(1)单分支if语句
格式:
if<条件> :
<语句块>
if(条件表达式)后面加冒号“:”,当语句A是由多个语句构成的复合语句时,所有语句严格遵循相同的缩进。
执行过程:如果条件表达式为真,则执行语句A,然后继续往下执行;
如果条件表达式为假,则不执行语句A,然后继续往下执行。
(2)双分支if语句
if(条件表达式)后面加冒号“:”,当语句A和语句B是由多个语句构成的复合语句时,所有语句严格遵循相同的缩进。
格式:
if<条件> :
<语句块1>
else :
<语句块2>
执行过程:
如果条件表达式为真,则执行语句A,
然后继续往下执行。如果条件表达式为假,则执行语句B,然后继续往下执行。
(3)注意
if语句中的冒号表示下方紧接着一个语句块。在Python中,语句块是一行或放在一起多行的语句,一般通过行缩进来标识。同一个if语句中,if、else下方的语句块必须采用相同的缩进。
语句块缩进
在Python中,行尾冒号的作用是告诉Python接下来要创建一个新的语句块。因此,只要某一行以冒号结尾,它接下来的内容就应该有缩进。Python中有一个惯例:总是将语句块缩进4个空格。
(4)讨论探究
区间测速:
目前,国内很多高速公路都启用了区间测速。所谓区间测速,是在同一路段上布设两个监测点,基于车辆通过前后两个监测点的时间来计算车辆在该路段上的平均行驶速度,并依据该路段上的限速标准判定车辆是否超速。
现有一段长为25千米的测速区间,小车的限速是100千米/时。数据中心需要编写一段程序,用来判断某辆小车在此测速路段是否超速。
①抽象与建模
要判断某辆小车在该测速区间内是否超速,首先要求出该小车的平均车速,然后与限速100千米/时进行比较,若平均车速小于等于限速,属于正常;否则就判定为超速。而求平均车速时需要提供区间距离和行驶时间。区间距离已经明确,小车的区间行驶时间可通过小车经过前后两个监测点的时间差来计算,为简化问题,可将时间差作为行驶时间的输入数据。各个数据相应的数据类型及变量名如下表所示。
区间测速数据分析表
通过上述的问题抽象,可建立如下计算模型:
②设计算法
根据上述计算模型,解决问题的关键是根据v值做出判断,可采用分支结构设计算法。
超速判断算法流程图
③编写程序
根据算法编写的程序及测试结果如下:
s=25
t=int(input("请输入用时(秒) :"))
v=s*3600/t
if v<=100:
print("正常")
else:
print("超速")
测试结果:
请输入用时(秒) :800
超速
2.if-elif 语句
(1)作用:应用if条件语句可以快速地实现程序的分支选择,但当分支比较多时,用if...elif...else语句来实现比较简便。
(2)格式
if<条件1> :
<语句块1>
elif<条件2> :
<语句块2>
……
elif<条件N> :
<语句块N>
else :
<语句块N+1>
(3)执行过程
(4)在上述“区间测速”的基础上,如果某辆小车超速,数据中心能同步显示超速的程度,如“超过规定时速且不足 20%”“超过规定时速 20%以上且不足 50%”“超过规定时速 50%以上且不足70%”“超过规定时速 70%以上”。如何用程序来实现这个目标?
①抽象与建模
根据超速标准,设定如下表所示的判断条件。
超速标准及其判断条件对应表
②设计算法
当条件v≤100不成立时,需要参照上表进一步对平均车速进行判断。算法对应的流程图如右图所示。
超速程度判断算法流程图
③编写程序
根据算法编写的程序及测试结果如下:
程序
s=25
t=int(input("请输入用时(秒) :"))
v=s*3600/t
print("平均车速",round(v,1))
if v<=100:
print("正常")
elif v<120:
print("超过规定时速且不足20%")
elif v<150:
print("超过规定时速20%以上且不足50%")
elif v<170:
print("超过规定时速50%以上且不足70%")
else:
print("超过规定时速70%以上")
测试结果
请输入用时(秒) :720
平均车速 125.0超过规定时速20%以上且不足50%
3.探讨与讨论
四、循环结构的程序实现
循环结构的算法可以通过for语句和while语句来实现。
1.for 语句
(1)概念
for循环语句是通过遍历某一序列对象来构建循环,循环结束的条件是对象遍历完成。
(2)格式:
for <变量> in <序列> :
<循环体>
[else:
<语句块>]
(3)for <变量> in <序列> :
<循环体>
<变量>:每经过一次循环,就会得到序列中的一个元素,并通过循环体处理它
<序列>:通常是字符串、列表、range对象实例等
当序列中的元素全部遍历完时,程序会自动退出循环,继续执行else子句中的语句块(该else子句可选)。若循环过程中执行了循环体中的break语句,则程序会中途退出for语句,转而去执行for语句后面的语句(即使有else子句,该子句也不会被执行)。
(4)案例
代码一
hobby=["篮球","羽毛球","看书","旅游","音乐"]
for x in hobby:
print(x)
篮球
羽毛球
看书
旅游
音乐
代码二
hobby=["篮球","羽毛球","看书","旅游","音乐"]
for x in range (0,len(hobby)):
print(hobby[i],i)
篮球 0
羽毛球 1
看书 2
旅游 3
音乐 4
想一想
不知同学们注意到上面的for循环语句中有一个缩进,有无缩进对于for循环有没有影响呢?
冒号“:”代表下一行是循环的第一行,但是循环体在书写时需要缩进。在for循环中,从for语句末尾的冒号开始至其下面没有缩进的代码之间都是其包含的需要重复执行的部分。因此,for循环所包含的语句是以缩进为标志的。
(5)range函数
①格式
range( start, end , steps )
start:起始值(可以不写(不写时默认从0开始));
end:终值(取不到)
steps:步长(默认1,可省略)
②功能
创建一个整数列表
③总结
在for循环中,当序列遍历完后,序列的长度就是for循环语句执行的次数
④案例
range(1,6)其实是生成一个1~6的整数(不包含6)。
使用range( )函数时,还可指定步长
使用range( )函数时,数值列表也可以是降序的,如range(10,1,-2)就是生成10至2的偶数(降序)。
刚才的两个案例都是升序,能不能生成一个倒序的数组呢?
(6)试一试
请编写一个循环打印星星的程序,要求如下:
①输入需要打印的行数数row
②每行需要打印输出的星星数与该行的行数是一致的
③星星统一使用符号*3>
【温馨提示:请用for循环完成此题!】
r=int(input("请输入需要打印的行数:"))
n="*"
for r in range(1,r+1):
print(n*r)
(7)探讨与讨论
2.while 语句
同学们都在自动取款机上取过钱吧,密码泄露等不安全因素对银行的安全性发出了巨大的挑战。而密码输入次数限制是维护账号安全的一种有效方式,避免了不法分子通过试错的方式获取密码。
银行卡取款:有效次数限制密码
在许多情况下,当一个循环执行之前,可能并不知道它需要执行的次数。这时,就可以使用while循环。
用法
当型循环,只要条件满足,就不断循环;否则,退出循环。
格式
while <条件> :
<循环体>
while(表达式):
语句或语句组
①表达式一般是一个关系表达式或一个逻辑表达式,表达式的值应该是一个逻辑值真(True)或假(False)。
②当表达式的值为真时,执行循环体语句;当表达式的值为假时,退出循环,执行循环体外的下一条语句(即while后面没有缩进的第一条语句)。
③每次循环都是执行完循环体语句后回到表达式处重新开始判断,重新计算表达式的值。一旦表达式的值为假就退出循环,为真时就继续执行循环体语句。
④循环体中必须有改变条件表达式值的语句,否则将成为死循环。
(1)讨论探究
猜数游戏
编程实现一个“猜数游戏”。给定一个数让用户猜,用户输入猜测的数,计算机给出相应提示:“偏大”“偏小”或“正确”。若所猜数字正确,则游戏结束;否则继续猜数。
①抽象与建模
游戏中首先要确定一个数number,然后将用户猜测的数guess与number比较,直到相等为止。
通过上述的问题抽象,建立如下模型:
(2)设计算法
要将用户输入的数与给定数(如number值为23)进行反复比较,用布尔型变量running表示猜数是否正确,其值为True表示猜数正确,游戏结束;反之,继续猜数。
猜数游戏流程图
③编写程序
根据算法编写的程序及测试结果如下:
number=23
running=False
while not running:
guess=int(input("请输入猜测的数:"))
if guess==number:
print("正确")
running=True
elif guess<number:
print("偏小")
else:
print("偏大")
测试结果
请输入猜测的数:300
偏大
请输入猜测的数:20
偏小
请输入猜测的数:100
偏大
请输入猜测的数:25
偏大
请输入猜测的数:23
正确
(2)探讨与讨论
3.循环嵌套
(1)概念
多重循环,即“循环嵌套”。如果某一种循环语句中包含着自身或其他循环语句,就称为循环的嵌套”。for 循环或while 循环之间可以相互嵌套。
(2)作用
无论是for循环还是while循环,都需要一个控制循环的变量来控制循环的执行。但是,有些循环仅靠循环变量自身的变化难以达到想要的控制效果,因此需要用到控制循环的跳转语句。实现控制循环的跳转需要用到break和continue两个关键字。其中,break是中断循环,continue是跳出本次循环体的执行。
①break语句
在循环结构中,可以用break语句跳出当前循环体,从而中断当前循环。在实际运用中,往往是在循环体中使用某一个条件来选择是否中断循环,即跳出当前循环,继而执行当前循环外的下一条语句。也就是说,当某个条件成立的时候,需要立即退出循环,不再运行循环中余下的代码,也不管循环控制变量的条件测试的结果如何。使用break语句,即可让程序能按照要求执行要执行的代码。
②continue语句
continue语句是对break语句的补充。continue不是立即跳出循环体,而是当条件符合需要跳转的时候,跳过该次循环结束前的语句,回到循环开头的条件测试部分,重新开始执行循环。同理,在实际运用中,往往是在循环体中使用某一个条件来选择是否跳转循环。
没有break语句
s=["tea","teacher","student","stu"]
for ch in s:
print(ch)
else:
print("完整输出")
for循环完整执行,则else子句执行
运行对应程序,观察输出结果
含有continue语句
s=["tea","teacher","student","den"]
c=input("输入:")
for ch in s:
if c in ch:
continue
print(ch)
else:
print("完整输出")
continue语句不管是否执行,for循环均会完整执行,else子句均执行。
语句
break语句
continue语句
特点
结束整个循环,转而执行循环结构后面的语句
结束本次循环,继续下一次循环。
相同点
两者都只能用于循环之中。 不可单独使用。在嵌套循环中,Break和continue只会对最近的一层循环起作用,也就是就近原则。
代码实例
for i in range(1,11):
for j in range(1,11):
if i+j!=10:
break
print(i,j)
for i in range(1,11):
for j in range(1,11):
if i+j!=10:
continue
print(i,j)
运行结果
9 1
1 9,2 8,3 7,4 6,5 5,6 4,7 3,8 2,9 1
(3)总结
①构建嵌套的循环需要注意:
缩进关系要保证好,内部的循环该缩进的要缩进,保持好层级关系才能让程序正确运行。
内外循环使用的计数变量不能相同,这样才可以保证不同循环的独立性,不会互相错乱。
②while循环嵌套和for循环嵌套一样,只需要改写成对应循环即可,注意不要忘了计数变量的自增、自减。
(4)探讨与讨论
五、函数与模块
同学们,你们在考试时会用到哪些文具?是全部拿在手里吗?若不是,通常是如何保管?
同样的,Python有很多内建函数、常数,和你的做法类似,把这些内建函数和常数放到工具包中,这些工具包在Python中称之为模块。
在用算法解决问题的过程中,经常采用模块化程序设计思想,将问题分解成若干个子问题,并用相对独立的程序段来针对性地解决各个子问题,提高程序设计的效率。对于一些常用的程序代码,以模块化的形式进行保存,需要时可重复调用。
在Python中,主要利用函数、模块等方式实现模块化程序设计。
1.函数的构造及应用
Python中的内建函数能实现许多功能,但在实际程序设计中,并不是所有的功能都有内建函数来直接提供支持,有时候需要根据实际情况自己构造函数以实现常用代码的模块化。
(1)定义函数的语法
def 函数名(参数集合) :
<函数体>
[return 函数值]
函数名的命名规则和变量名一样
(2)讨论探究
某地块示意图如下图甲所示,地块边长分别为L1、L2、L3、L4。要想计算其面积,可通过如下算法来完成:先将此地块划分成如图3.2.12乙所示的两个三角形,只要再丈量出L5的长度,就可以利用海伦公式分别计算出这两个三角形的面积S1和S2,从而得到此地块的总面积S(S=S1+S2)。
某地块示意图
分析:在上述算法的程序实现过程中,将两次使用海伦公式求三角形的面积,这可以通过构造一个函数来解决代码重复的问题。
下面的Python程序段构造了一个利用海伦公式求三角形面积的函数Area :
def Area(a,b,c):
p=(a+b+c)/2
s=(p*(p-a)*(p-b)*(p-c))**0.5
return s
主程序在调用Area函数时,需要将三角形三条边的边长值分别传递给Area函数的参数a、b、c。
主程序中有函数调用表达式Area(3,4,5),则函数表达式传递给边长a、b、c的值分别为3、4、5。计算如上图所示不规则地块面积的表达式为:S=Area(L1,L2,L5)+Area(L3,L4,L5)。
(3)探讨与讨论
2.模块的导入及应用
(1)什么是模块?
模块是python中的最高级别组织单元,它将程序代码和数据封装起来以便重复使用。
模块中包含了实现某一类业务的多个函数和属性。
模块就是一个实现某种业务的工具包。
要使用工具包中的工具(一般是函数),就需要导入这个模块。模块也称包或者库。
在python中,一个文件就叫做一个模块(以“.py”为后缀名)。
python中模块的位置在哪里呢?
打开python的安装位置,在安装位置文件中找到Lib文件夹
所有python自带的模块都在Lib文件夹中
(2)Python的模块的导入的语法
引入模块的语句是:import
①mport 模块名1 [as 别名1], 模块名2 [as 别名2]
注:方括号里的可以省去
使用这种语法格式的 import 语句,会导入指定模块中的所有成员(包括变量、函数、类等)。当需要使用模块中的成员时,需用该模块名(或别名)作为前缀加上成员名。
案例:
import math
x=math.sqrt(2)
print(x)
import math as s
x=s.sqrt(2)
print(x)
②from 模块名 import 成员名1 [as 别名1],成员名2 [as 别名2]
注:方括号里的可以省去
使用这种语法格式的 import 语句,只会导入模块中指定的成员,而不是全部成员。同时,当程序中使用该成员时,无需附加任何前缀。
案例:
from math import sqrt
x=sqrt(2)
print(x)
from math import sqrt as pf
x=pf(2)
print(x)
(3)math模块
Python math 模块:
提供了许多对浮点数的数学运算函数。
名称
含义
math.e
自然常数e
math.pi
圆周率π
math.ceil(x)
对x向上取整,如x=1.2,返回2
math. floor(x)
对x向下取整,如x=1.2,返回1
math.pow(x,y)
指数运算,返回x的y次方
math.log(x)
对数运算,默认基底为e
math.sin(x)/math.cos(x)
正弦函数/余弦函数
math.tan(x)
正切函数
math.degrees(x)
弧度转换成角度
math.radians(x)
角度转换成弧度
math.sqrt(x)
求x的开方
math模块中的常用常数与函数
①试试使用Python math 模块:
在编程求圆面积时,公式s=πr 2 中的π和r 2 可以分别调用math模块中的圆周率常数math.pi和函数pow(r,2) 来完成。
(2)random模块
ython random模块:Python中的random模块用于生成随机数。
名称
含义
random.random()
随机生成一个【0,1)范围内的实数
random.uniform(a,b)
随机生成一个【a,b】范围内的实数
random.randint(a,b)
随机生成一个【a,b】范围内的整数
random.choice(seq)
从序列的元素中随机挑选一个元素
如:random.choice(range(10)),即从0到9中随机挑选一个整数
random.sample(seq,k)
从序列中随机挑选k个元素
random.shuffle(seq)
将序列的所有元素随机排序
试试用random模块生成一个随机数:
import random
print ("第一个随机数: ", random.random())
试试用random模块玩石头剪刀布的游戏:
import random
print(random.choice(['剪刀', '石头', '布']))
①试试使用random模块:
例如有高一年级的(2)班、(3)班、(5)班、(8)班、(9)班共5个班的学生参加大合唱比赛,为了公平起见,需要随机安排他们的出场顺序。使用random模块,可以完成此任务。
(3)Image模块
Image模块是PIL库(Python Imaging Library)中的重要模块,引用它可以完成对图像的一些常用操作,比如获取图像尺寸和像素颜色、旋转图像或改变图像格式等。
代码
释义
from PIL import Image
im =Image.open("school.jpg")
print(im.format)
print(im.size)
print(im.mode)
im.rotate(45).show()
#打开school.jpg图像文件
#获取图像文件格式
#获取图像尺寸大小(以像素为单位表示图像的宽度和高度)
#获取图像的颜色模式
#将图像旋转45°后显示
除了上述提到的模块,还有吗?有怎么用?
除了上述提到的模块,Python还包括了大量的其他模块,它们的功能涉及系统管理、科学计算、图形处理等各个领域。比如,用于实现部分操作系统功能(可用于文件、目录等操作)的os模块,与时间处理有关的time模块,可以实现科学计算、数据可视化的numpy和matplotlib,用于多媒体开发和游戏软件开发的pygame模块,支持图形处理的tkinter等。
(4)探讨与讨论
五、小结
六、课堂小练
通过逐一展示如何运用if语句的方式让同学们在循序渐进中理解单分支if语句。
在单分支if语句的基础上通过对比的方式讲解双分支if语句,这样同学们能更好的理解和掌握双分支if语句。
将易错点单独提取出来讲解,让同学们注意到这些不容易注意到的地方。
通过一个案例的讲解让同学们建立起如何运用if语句解决问题,能更好的掌握其知识点。
用流程图直观的展示其算法。
同时展示程序和测试结果,让同学们直观的了解程序的用法。
以关键字段展示if-elif 语句的知识点,让同学们更好的掌握if-elif 语句的重难点。
将刚才的案例用if-elif 语句进行改进和讲解,让同学们在对比中掌握其知识点。
用流程图直观的展示其算法。
同时展示程序和测试结果,让同学们直观的了解程序的用法。
以关键字段展示for 语句的知识点,让同学们更好的掌握for语句的重难点。
将运用for语句的两个代码以表格的形式进行直观的对比,让同学们一目了然的理解其不同点。
通过提问的方式让同学们思考,随后展示其案例,以问题为导向,让同学们能更好的掌握其知识点。
以关键字段展示range函数的知识点,让同学们更好的掌握range函数的重难点。
通过大量的演示和举例,让同学们直观的感受range函数的在程序中的运用。
让同学们过手一个实践操作,这样能更好的掌握其知识点。
以关键字段展示while 语句的知识点,让同学们更好的掌握while 语句的重难点。
通过一个猜数游戏的实践活动来加深同学们对while 语句这一知识点的理解。
用流程图直观的展示猜数游戏流程。
同时展示程序和测试结果,让同学们直观的了解程序的用法。
以关键字段展示循环嵌套的知识点,让同学们更好的掌握循环嵌套的重难点。
通过一个编程案例;来展示有无break语句在程序中的区别,让同学们在对比实践中掌握知识点。
将break语句和continue语句的以表格对比的形式进行直观的对比,让同学们一目了然的理解其异同点。
通过一个生活中的实际例子来引出函数与模块这一知识点,从而提升同学们的兴趣。
通过一个案例来讲解和分析自定义函数在实际生活中的应用,让同学们结合实际操作来掌握其知识点。
讲解什么是模块及模块在电脑中的位置,从而引起同学们对模块这一知识点的兴趣。
从多种方法来讲解Python的模块的导入的语法,让同学们知道这一知识点的运用有多种,让同学们能够做到举一反三。
以表格的方式直观的展示Python math 模块,以便让同学们能更好的掌握其知识点。
以表格的方式直观的展示random模块,以便让同学们能更好的掌握其知识点。
通过案例的分析来展示random模块,让同学们直观的感受到这一知识点的重难点。
以表格的方式直观的展示Image模块,以便让同学们能更好的掌握其知识点。
课
堂
练
习
(有题有答案有解析)
1.已知password存储了用户input()输入的密码(注:经过数据类型转换,password最后存储整数型密码),如果密码等于667722则打印输出"恭喜!密码正确"。下列选项能准确表达此逻辑的是( )
A.if password=="667722":
print("恭喜!密码正确")
B.if password==667722:
print("恭喜!密码正确")
C. if password=667722:
print("恭喜!密码正确")
D.if password="667722":
print("恭喜!密码正确")
答案:B
解析:读题可知密码被转化为整型,所以不需要用引号括起来。条件语句==表示判断相等。故选B。
2.Python中专门用于生成序列的内置函数是( )。
A.eval() B.range() C.input() D.print()
答案:B
解析:A 错误eval()函数是将字符串str当成有效的表达式来求值并返回计算结果。
B 正确range()函数允许用户在给定范围内生成一系列元素。
C 错误input()函数是用来实现Python信息的输入。
D 错误print()函数是用来向屏幕上输出指定的字符串。
3.下面的程序段运行后的结果为( )
s=0
for i in range(1,6,2):
s=s+i
print(s)
A.15 B.10 C.12 D.9
答案:D
解析:本题考查的是Python循环语句。range(1,6,2)生成的是1,3,5的整数,故s=0+1+3+5=9。选项D正确。
4.下列有while循环结构的说法不正确的是( )
A.While循环格式一般为:While(表达式):语句或者语句组
B.执行过程中表达式一般是一个关系表达式或逻辑表达式;
C.表达式为真执行循环体;为假退出循环。
D.表达式为假执行循环体;为真退出循环。
答案:D
解析:本题考查while循环结构,While循环格式一般为:While(表达式):语句或者语句组;执行过程中表达式一般是一个关系表达式或逻辑表达式;表达式为真执行循环体;为假退出循环。故本题选D选项。
5.关于Python循环结构,以下选项中描述错误的是( )。
A.Python通过for、while等保留字提供遍历循环和条件循环结构。
B.break用来跳出最内层for或者while循环,脱离该循环后程序从循环代码后继续执行。
C.continue语句的作用是中止整个循环。
D.遍历循环中的遍历结构可以是字符串、文件、组合数据类型和range()函数等。
答案:C
解析:A 正确;B 正确;C 错误 continue语句只结束本次循环体的执行,而不是中止整个循环。D 正确。
6.下列关于导入模块math方法错误的是:
A.import math
B.import math as shuxue
C.from math import all
D.from math import *
答案:C
解析:根据导入模块常见的三种方法得知,并没有from math import all的方法,故选项C方法错误。
课
堂
小
结
1.在Python中,行尾冒号的作用是告诉Python接下来要创建一个新的语句块。
2.Python中有一个惯例:总是将语句块缩进4个空格。
3. if(条件表达式)后面加冒号“:”,当语句A和语句B是由多个语句构成的复合语句时,所有语句严格遵循相同的缩进。
4.应用if条件语句可以快速地实现程序的分支选择,但当分支比较多时,用if...elif...else语句来实现比较简便。
5.循环结构的算法可以通过for语句和while语句来实现。
6.for语句通过遍历序列中的元素实现循环,序列中的元素会被依次赋值给变量,然后执行一次循环体。若序列中的元素为有序整数,则可利用内建函数range来实现。
7.代 码“print(num,end=' ')”中的“end=' '”表示将print()函数的结束值设置为一个空格。
8.while循环是当型循环,只要条件满足,就不断循环;否则,退出循环。
9.多重循环,即“循环嵌套”。如果某一种循环语句中包含着自身或其他循环语句,就称为循环的嵌套”。for 循环或while 循环之间可以相互嵌套。
10.在Python中,主要利用函数、模块等方式实现模块化程序设计。
11.在循环结构中,可以用break语句跳出当前循环体,从而中断当前循环。
12.continue语句是对break语句的补充。continue不是立即跳出循环体,而是当条件符合需要跳转的时候,跳过该次循环结束前的语句,回到循环开头的条件测试部分,重新开始执行循环。
13.模块是python中的最高级别组织单元,它将程序代码和数据封装起来以便重复使用。模块中包含了实现某一类业务的多个函数和属性。
14.Python math 模块提供了许多对浮点数的数学运算函数。
15.Python中的random模块用于生成随机数。
16.Image模块是PIL库(Python Imaging Library)中的重要模块,引用它可以完成对图像的一些常用操作,比如获取图像尺寸和像素颜色、旋转图像或改变图像格式等。
反
思
评
价
通过本节课的教学过程中,通过案例分析和小组实践,让学生亲身体验了编程的乐趣和挑战,培养了学生的逻辑思维能力和问题解决能力。在今后的教学中,可以进一步加强对学生编程能力的培养,提供更多的实践机会,让学生在实践中不断提高自己的编程水平。
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$