1、语言基础与顺序结构教学设计语言基础与顺序结构教学设计 课程标准课程标准 和和 教学目标教学目标 语言基础和顺序结构语言基础和顺序结构 教材内容教材内容:本课包含教材 3.2.1Python 语言基础(不包括关系运算符、逻辑运算符)与 3.2.2 顺序结 构的程序实现 适应的课程标准:适应的课程标准: 1.7 掌握一种程序设计语言的基本知识,使用程序设计语言实现简单算法。 教学目标:教学目标: 掌握使用 IDLE 编写程序和运行程序的方 法。 掌握 Python 常见的数据类型(整型、实型、 字符型、布尔型) 掌握 Python 算术运算符 掌握 Python 中的变量及其赋值 掌握 Pytho
2、n 的基本数据结构(字符串、列 表、字典) 学会利用 Python 语言编写顺序结构的程序 解决问题。 指向的核心素养:指向的核心素养: 计算思维:在信息活动中,能够采用计算机科学 领域的思想和方法界定问题、抽象特征、建立结构 模型、合理组织数据。通过判断、分析与综合各种 信息资源,运用合理的算法形成解决问题的方案。 针对给定的任务进行需求分析,明确解决问题的关 键问题。运用基本算法设计解决问题的方案,能使 用编程语言或其他数字化工具实现这一方案。 学习环境:学习环境:有教学控制软件的多媒体机房,需要安装 Python 编程环境。 建议课时:建议课时:1 课时 教学活动教学活动 设计设计 教学
3、环节教学环节教学过程教学过程设计意图设计意图 情境导入情境导入 问题:Python 是一种计算机程序设计语言。是一种面向 对象的动态类型语言,最初被设计用于编写自动化脚本 (shell),随着版本的不断更新和语言新功能的添加,越 来越多被用于独立的、大型项目的开发。请通过互联网 搜索回答如下问题:Python 程序语言的优点?为什么 Python 如今如此流行? 参考答案: Python 语言的优点:可读性好,简单;有强大的社区支 持,使用的人多,任何问题在社区中几分钟之类就能得 到解决;有很多的框架和模块,使应用程序开发变得非 常容易;在很多领域都有广泛的应用。 Python 为什么如此流行
4、:Python 是数据科学、机器学习 和人工智能的首选语言, 除了这些领域 Python 在桌面开 发、web 开发这些方面也是不错的选择。Python 的开发 人员的薪酬较高。 通过解答问题让学生了解 Python 语言的优 点、Python 流行的原因,激发学生学习 Python 语言的兴趣。 新课教学新课教学 知识讲解IDLE 运行程序 教师演示 IDLE 运行程序的两种方式: 通过 IDLE 的 Shell 运行 演示在 Shell 中输入 “1+1” 按回车计算表达式运算结果, python 的 shell 中能够直接计算出表达式的结果。 通过 IDLE 运行文件 a.通过 IDLE
5、 的菜单“File”“New File”命令新建一 个全新的 Python 程序文件。 b.在这个文件中输入如下的代码: print(“你好,世界! ”) c.保存文件,通过 IDLE 的菜单“Run”“Run Moudle” 运行该程序文件。 print 是一个函数,作用是在屏幕上打印出传递给它的 参数,这里的参数是文本“你好,世界! ” 。 学生活动使用 IDLE 运行程序 尝试在 IDLE 的 Shell 中运行如下的代码: a.4 + 13b. hello, + python! 尝试在 IDLE 中新建一个文件,并输入如下代码 print(hello, + python!) 查看运行结
6、果。 知识讲解数据类型与算术表达式 观察前面完成的学生活动中尝试的代码,4、3 没有用双 引号,hello,与python!使用了双引号,这是因为 它们是不同的数据类型。Python 编程语言在按照数据本 身的特点将数据分为了若干种不同的类型: 整型:数学中的整数。 实型:数学中的实数。 字符串型:用单引号或者双引号包裹,表示一段文本。 布尔型:只有 True 和 False 两个值,代表成立(真)与 不成立(假) 。 而 4 + 3 中的“+”是我们数学中的算数运算符,在 4 + 3 这个算数表达式中,它的功能是计算 4 和 3 的和。数 学中的基本算术运算符在 Python 中都有对应的符
7、号。 运算符表达式描述 优先级 *x*y 求 x 的 y 次幂1 *x*y求 x 和 y 的乘积2 /x/yx 除以 y 的实数值2 /x/y x 除以 y 的取整数2 %x%yx 除以 y 的余数 2 +x+yx 和 y 的和3 -x-yx 和 y 的差3 Python 中的算术运算符存在优先级,优先级程度最高级 通过演示让学生初步掌握 Python 运行程序 的两种方式,让学生理解 print 函数的作 用与使用方法。 在学生动手实践的过程中让学生掌握使用 IDLE 运行程序的两种方式。 实践的代码 4 + 13 与hello, + python!也是为了接 下来讲解数据类型与算数表达式做
8、铺垫。 让学生初步掌握 Python 中常见的数据类型 和算术运算符。 别为 1,级别数字越小,优先级越高。 在前面的学生活动中尝试的代码有一点需要注意!4 + 3 中的 4 和 3 是整型,这里的“+”是计算 4 和 3 的和;而 hello, + python!中的“hello, ”和“python! ” 是字符串, “+”的作用是连接两个字符串成为一个新的 字符串“hello,python! ” 。 学生活动算术表达式计算 请列举生活中整型、实型、字符串型数据的例子。 参考答案: 整型: 16 亿人中的 16 亿; 实型: 价格 3.50 元中的 3.50; 字符串:书上的一段文字。 计
9、算如下算术表达式的结果, 并在 IDLE 的 shell 运行 运行算术表达式,查看结果是否与计算的一致。 a.2*10 b.3*45*6 c.123-123/100*100 d. Who + Am + I ? 知识讲解变量和赋值语句 程序设计时,有些数据是未知或者可变的,为了更灵活 地使用这些数据,可以使用变量来存储。要将数据存储 到变量中可以采用如下语法的代码: chars = hello price_1 = 123 其中的“=”符号称为赋值语句,能够把“=”右边的数 据赋值给“=”左边的变量。变量名必须以字母、数字和 下划线组成,但不能以数字开头。 学生活动赋值语句的语法糖 已知变量 n
10、umber= 1 ,分别执行如下语句: number += 2 number -= 1 number *= 3 number /= 2 每次执行观察 number 变量的值, 分析 “+=” 、“-=” 、“*=” 、 “/=”这些赋值语句的作用。 参考答案: x += yx = x + y x -= yx = x - y x *= yx = x * y x /= yx = x / y 知识讲解基本的数据结构 在生活中有一些数据是无法用 Python 基本的数据类型 来表示的,比如一个学生的信息,学生有姓名、学号、 通过列举生活中数据类型的例子进一步巩 固 Python 中的数据类型;通过计算
11、算术表 达式进一步掌握 Python 中的算术运算符, 在 IDLE 中运行算术表达式能够进一步的巩 固 IDLE 运行程序的方法。 让学生初步掌握变量和赋值语句。 让学生掌握 Python 中赋值语句的快捷方式 语法糖。 让学生初步掌握列表、字典,初步掌握列 表和字符串的索引和分割。 班级、是否团员等信息,姓名是字符串、学号是整型、 班级是文本、是否团员是布尔型;再比如一篇文章的所 有段落,每个段落是一个字符串,很多个字符串无法用 单一的字符串类型来表示。类似这样的数据,需要将各 种数据组合成具有一定结构的复合体。 列表 列表是由一些数据元素共同组成的一个序列的整体。列 表由 0 个或多个元
12、素组成的序列,其中的元素的类型可 以不同。列表用“”来表示,元素之间用逗号“, ”分 割。例如,某个商品的信息由“编号” 、 “名称” 、 “数量” 这些数据项组成,数据项的值分别为:BH60018、苹果、 50,可以表示为: info = BH60018, 苹果, 50 列表可以通过索引访问,形式如 infoindex。info0 得到第一个元素 “BH60018” , info1得到第二个元素 “苹 果” ,info2得到第三个元素 “50” 。 若要访问多个元素, 可以通过“开始元素:结束元素后一个元素”的方式来 访问,称之为分割,代码如下: info0:2 上面代码得到的结果是BH60
13、018, 苹果 字符串也支持索引和分割操作, s = BH60018,s1 的值为“H”, s2:4的值为“60” 。 字典 字典由键值对组成,键和值之间用冒号“: ”分割,用逗 号“, ”分割键值对,所有的键值对用“”包裹。键和 值在字典中以成对的形式出现,并以如下方式标记: d = key1: value1, key2: value2, key3: value3, key4: value4, 如: dict = 铅笔: 71, 钢笔: 59, 橡皮: 98, 尺子 : 92。 在字典中键和值都可以是任意类型,每个键只能对 应一个值。 可以通过查找某个特定的键查找键对应的值。 dict铅笔能
14、找到对应的值 71。 学生活动列表、字典和索引、分割实践 构造一个列表 lst,该列表包含1,10之间的整 数,要取出其中第 n 个元素的代码如何写,取出第 x 到 y 的元素代码如何写? 构造一个字典来代表学生,学生的姓名是“唐 杰” ,学号是“33”,性别为“男” ,将该字典赋值变量 stu,如果要访问 stu 的姓名、学号、性别应该如何做? 参考答案: lst = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10。 让学生掌握列表、字典,掌握列表和字符 串的索引和分割。 要取出其中的第 n 个元素:lstn-1。 要取出第 x 到 y 个元素:lstx-1:y。 stu = 姓
15、名: 唐杰, 学号: 33, 性别: 男。 访问姓名: stu姓名, 访问学号: stu学号, 访问性别:stu性别。 学生任务交换两个变量的值 根据交换两个变量值的流程图,小组合作完成交换两个 变量的 Python 程序。 提示:input(x)是 Python 的内置函数,y = input(请 输入 y 的值:)会在屏幕上出现提示信息“请输入 y 的 值” ,然后把输入的文本作为字符串赋值给 y。int(x)是 Python 的内置函数, 它的作用是把字符串 x 转化为整数。 比如:int(6)能得到结果 6。 参考答案: a = int(input(请输入整数 a 的值:) b = i
16、nt(input(请输入整数 b 的值:) c = a a = b b = c print(a:+str(a) print(b:+str(b) 问题与讨论:如果调换上述程序中语句 1、语句 2 或语 句 3 的位置,程序的运行结果将会如何变化? 通过该任务让学生学会利用 Python 语言编 写顺序结构的程序解决问题,完成本课难 点教学。通过问题与讨论进一步理解每条 语句的功能,并感受顺序结构的执行过程。 课堂小结课堂小结 知识梳理: 1.使用 IDLE 编写程序和运行程序的方法。 2.掌握 Python 常见的数据类型(整型、实型、字符型、 布尔型) 3.Python 算术运算符 4.Pyt
17、hon 中的变量及其赋值 5.Python 的基本数据结构(字符串、列表、字典) 6.学会利用 Python 语言编写顺序结构的程序解决问题。 通过回顾总结帮助学生巩固本节课的学习 内容。 作业布置作业布置 基础作业(面向所有学生) : 本节配套课后作业 提升作业(面向学有余力学生) : 通过网络搜索学习列表自带的函数,能够实现向列表添 加数据和删除数据。 基础作业主要是巩固本节课学习到的知 识。提高作业给学有余力的同学完成,列 表添加数据和删除数据的函数在真实的应 用程序中使用频率较高,希望学生通过提 高作业能够了解列表添加数据和删除数据 的函数及使用方法。 教学设计教学设计 思路思路 本节
18、课是算法程序实现的第 1 课时。由于学生在刚开始接触编程时,往往从编写以顺序结构形式出现的简单程序 语句起步,在程序语句的编写中又肯定会涉及到各种基本运算、基本数据类型等,因此,建议将 Python 语言的基础 和顺序结构的程序实现两个方面的内容安排一起教学比较适宜。 Python 语言的基础知识,如数据类型、表达式、变量、赋值语句以及数据结构等,是后续编程的基础,也是本课 的重点。教学中可采用实例教学法,通过程序实例(如数值运算、字符操作等),让学生对编程基础知识先有个初步 的了解。考虑到知识的相关性,建议把关系运算符和逻辑运算符的内容移到后续 if 语句的教学中。 顺序结构的程序实现,建议
19、结合“交换两个变量 a、b 的值”实例,让学生熟练运用基础知识实现程序,并通过 上机实践和“问题与讨论”,讨论“如果调换上述程序中语句 1、语句 2 或语句 3 的位置,程序的运行结果将会如何 变化?”,进一步理解每条语句的功能,并感受顺序结构的执行过程,完成本课的难点教学。 本节课中实例的数量与难易度要根据学生的实际情况来决定,并选取一些接近学生的学习与生活实际的例子,激 发学生对程序设计的兴趣。 针对针对 核心素养核心素养 培养的培养的 设计考虑设计考虑 本课落实课标内容“掌握一种程序设计语言的基本知识,使用程序设计语言实现简单算法。”本课内容主要是 Python 语言基础(IDLE 编写
20、运行程序、常见数据类型、算术运算符、变量、赋值、基本数据结构)和顺序结构的程 序实现,非常适合培养计算思维。 为了培养针对给定的任务进行需求分析,明确解决问题的关键问题的计算思维,在本课中我设计了“算术表达式 计算”、“赋值语句的语法糖”、“列表、字典和索引、分割实践”这些学生活动和“交换两个变量的值”的学生任 务,在完成学生活动和学生任务的过程中学生要解决问题就必须针对给定的任务进行需求分析,明确解决问题的关键 问题,从而培养该计算思维。 本课的基本数据结构的内容非常有利于培养在信息活动中,能够采用计算机科学领域的思想和方法界定问题、抽 象特征、建立结构模型、合理组织数据的计算思维。我设计了“列表、字典和索引、分割实践”这个学生活动,在这 个活动中学生需要通过构造列表和字典来表示真实世界中的数据,目的就是为了培养培养该计算思维。 为了培养通过判断、分析与综合各种信息资源,运用合理的算法形成解决问题的方案的计算思维和运用基本算法 设计解决问题的方案,能使用编程语言或其他数字化工具实现这一方案的计算思维,我设计了“交换两个变量的值” 这个学生任务,学生通过分析问题,设计解决方案,最终通过编制程序来解决该问题,在此过程中培养上述的两种计 算思维。