内容正文:
第3单元 开启Python小宝箱
第2节 学习random模块 教案
一、教材分析
《学用random模块》是川教版七年级下册中的第三单元的第2节的教学内容,本节主要通过完成随机取数,随机点名,猜大小游戏等任务为例,帮助学生了解python程序解决实际问题的基本工作过程,使学生对计算机程序的结构和工作有一个初步的认识。在解决问题的过程中掌握if语句、while循环语句以及break语句和random模块的三种方法的实例的运用。
本节教学内容对学生来说既是新奇有趣的,也是有一定技术难度的。
二、学情分析
授课的对象是初一的学生,他们在初一上学期已经了解了python的turtle画图模块,对于一个新的模块的使用不会太陌生,同时掌握了一些python的基础语法,学生已经掌握了一些计算机使用的经验,具备了一定的逻辑推理思维能力。
教师在教学中扮演好一个引导者,引导学生主动思考,去解决问题。
三、教学目标
1、掌握random模块的导入方法。
2、掌握radint方法生成随机数的运用。
3、掌握choice方法从数列中随机取值的运用。
4、使用shuffle随机打乱数列中的数据的顺序
5、能编写简单的猜数游戏。
6、能使用pyinstaller模块将编写的程序打包成可执行文件。
四、教学重难点分析
根据初一年级学生的认知程度和思维能力的发展,结合本课的教学目标。
1、本课的教学重点为:
(1)掌握radint方法生成随机数的运用。
(2)掌握choice方法从数列中随机取值的运用。
2、本课的教学难点为:
(1)掌握radint方法生成随机数的运用。
(2)掌握choice方法从数列中随机取值的运用。
(3)编写简单的猜数游戏。
五、教学方法
1、讲授法
2、探究学习
3、自主学习
4、分小组练习
六、教学课时
2课时
7、 教学过程
【新课引入】(第1课时)
学生体验教师分享的小程序“随机生成数字小游戏”,并思考:如何做的。假如使用python程序语言该如何编写程序?
【教师讲解】
python程序语言有很多常用的模块:
1、turtle模块:海龟绘图,绘制各种图画。
2、random模块:随即模块,生成随机数等。
3、time模块:提供对时间的控制与操作。
4、math模块:提供各种数学运算方法。
5、pandas模块:提供各种统计方法。
6、matplotlib模块:生成各种统计图以及地图等。
7、openCV模块:人脸识别、图像处理、机器视觉等。
【教师讲解】
1、random模块:通常也被称为“随机模块。”
2、引导学生根据学习过的turtle模块的导入方式,迁移学习random模块的导入。
(1)import random
(2)import random as r
(3)from random import *
【教师讲解】
方法
格式
说明
randint
randint(开始数,结束数)
在开始数和结束数之间,随机生成一个整数
choice
choice(数据列)
随机从数据列中抽取一个数据
shuffle
shuffle(数据列)
随机打乱数据列中数据的顺序
【任务一】
请各小组使用randint方法随机生成0-100之间的一个整数。(要求:模块导入方式三种任选一种导入)。
在学生完成后,教师演示三种导入方式的操作。
并提问:手工执行代码很麻烦,有没有可以改进的地方呢?
【任务二】
请各小组使用循环语句实现一次性执行10次。(循环语句可以选择for循环,也可以选择while循环)
在学生完成后,教师演示分别使用for循环和while循环的方式的操作。
【思考】
1.如果randint方法的下限或上限取值是负整数,会出现什么结果?
2.如果randint方法的下限或上限取值是小数,会出现什么情况?说明了什么?
3.如果randint方法的下限为0,上限为1,最终生成的随机数会是什么结果?说明了什么?
4.使用随机数可以在turtle模块中随机生成海龟的坐标值,请使用turtle模块,画一幅随机“星空图”。
【游戏体验】(第2课时)
学生体验教师分享的小程序“猜数游戏”。
【教师讲解】
random模块的choice方法能够从数列中随机取出一个数据。
【任务三】
使用choice方法,从字符串“野火烧不尽春风吹又生”中,随机取出10次,看每次会取出哪个字符?
【任务四】
各小组用自己所学的知识,写出“随机抽取同学”的小程序吗?
【任务五】
以使用random模块的choice“随机取值”方法,取出一位同学的姓名来。
【教师讲解】
random模块的shuffle方法,可将数据列中的数据随机打乱。
【任务六】
程序产生0到