高中信息技术必修1 Python语言程序设计第二课时顺序结构程序设计教学设计_第1页
高中信息技术必修1 Python语言程序设计第二课时顺序结构程序设计教学设计_第2页
高中信息技术必修1 Python语言程序设计第二课时顺序结构程序设计教学设计_第3页
高中信息技术必修1 Python语言程序设计第二课时顺序结构程序设计教学设计_第4页
高中信息技术必修1 Python语言程序设计第二课时顺序结构程序设计教学设计_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

高中信息技术必修1Python语言程序设计第二课时顺序结构程序设计教学设计一、教学内容分析本课选自浙教版(2019)高中信息技术必修1《数据与计算》第三章第二节"Python语言程序设计"的第二课时。第一课时学生已经初步认识Python开发环境,完成了程序的编辑、保存与运行,对print函数和基本输入输出有了直观感受。本课时在此基础上聚焦程序三大基本结构中的顺序结构,围绕变量、赋值语句、基本数据类型、算术运算符、输入输出函数等核心知识展开,引导学生用程序解决"数据处理"问题,为后续分支结构与循环结构的学习奠定语法基础和思维基础。从单元整体看,本课承担着从"感受程序"走向"编写程序"的关键跨越。学生要完成的思维转变有三层:一是把自然语言描述的问题求解步骤转化为计算机可以执行的语句序列;二是理解变量作为数据容器的抽象意义,体会"先存后取"的计算模型;三是建立"输入—处理—输出"的程序设计基本框架。这三层转变恰恰是计算思维在本学科落地的具体路径。二、学情分析授课对象为高一年级学生。经过第一课时学习,多数学生能独立打开IDLE或集成开发环境,能运行教师提供的示例程序,对print("你好")这类语句不陌生。但摸底观察发现几个突出问题:其一,约六成学生把赋值语句理解为数学中的等式,对a=a+1这样的语句感到困惑,说明变量概念尚未真正建立;其二,学生习惯手算或计算器解题,缺少"把解法写成步骤"的意识,算法思维薄弱;其三,input函数接收到的数据是字符串这一点极易被忽视,直接拿来参与算术运算会报错,学生面对报错信息往往束手无策;其四,学生个体差异明显,少数有编程基础的学生"吃不饱",另有部分学生打字速度慢、对英文标识符有畏难情绪。针对上述情况,本课采用"情境任务驱动+分层活动设计+即时反馈纠错"的策略,把语法知识嵌入真实问题解决过程,用错误资源反哺教学。三、教学目标1.学生能说出变量的含义,理解赋值语句的执行过程,能用恰当的标识符命名变量,写出符合Python规范的赋值语句。2.学生能区分整数、浮点数、字符串三种基本数据类型,理解type()函数和int()、float()、str()转换函数的作用,能解释typeerror类报错的成因。3.学生能运用算术运算符与字符串格式化输出方法,按照"输入—处理—输出"框架独立编写简单的顺序结构程序,解决生活中的数据处理问题。4.学生在调试程序过程中养成阅读报错信息、逐行排查的习惯,体验算法与程序之间的关系,初步形成用计算思维解决问题的意识。四、教学重点与难点教学重点:变量与赋值语句的理解和运用;三种基本数据类型及其转换;顺序结构程序的设计与实现。教学难点:赋值语句的动态执行本质,即"先计算右边、再存入左边变量";字符串与数值之间的类型转换;从生活问题到程序语句序列的抽象建模。五、教学方法与策略本课采用任务驱动教学法,以"校园体测数据处理"为主线情境,设置三个层层递进的任务。辅以类比教学法化解变量概念的抽象性,采用"错误先行"策略让学生先有认知冲突再建构新知,配合学习单和半成品程序开展分层学习。教学环境为配备多媒体广播系统与Python3.x环境的机房,学生人手一机,学习单人手一张。六、教学过程环节一:情境导入——计算器也能"记住"数据吗上课伊始,教师大屏展示学校体质健康测试通知,提出情境:学校体测结束后,老师需要计算每位同学的体质指数(BMI),公式是体重除以身高的平方。教师现场用计算器算一名同学的数据,边算边"抱怨":每个数据要输好几遍,50个同学要按到什么时候?有没有办法让计算机只接收一次数据,自动完成计算并把结果整齐输出?教师顺势引出程序的工作模式:先让计算机"记住"数据,再让它"加工"数据,最后让它"报告"结果。板书课题——顺序结构程序设计:让计算机分步做事。设计意图:以真实校园事务切入,让"为什么要写程序"先于"怎么写程序"。计算器的低效体验构成认知落差,自然引出变量存储的必要性。环节二:任务一——初识变量与赋值教师给出第一段示例程序:weight=58height=1.68print(weight)让学生在环境中原样键入并运行,观察输出结果。随后提出三个观察性问题:第二行的height保存了吗?如果再输入一句height=1.60再print,屏幕上会显示什么?为什么会出现两个不同的答案?学生运行验证后发现,变量像一个贴了标签的盒子,内容可以被新值覆盖。教师板书剖析赋值语句的执行过程:等号右边先算出结果,再把结果放进左边的变量里,强调"="在Python里是"装入"而不是"等于"。教师随即抛出关键冲突语句:count=0count=count+1print(count)学生先凭数学直觉投票猜测,再运行验证。多数原先认为"不可能成立"的学生看到输出1之后产生强烈认知冲突。教师借助变量仓库类比小结:count=count+1的意思是"取出count里现存的值,加上1,再放回count"。至此,赋值的动态过程被学生真正理解。随后用两分钟完成学习单上的变量命名判断练习:哪些标识符合法——a1、班级_1、1class、myname、score。学生讨论后归纳命名规则:字母、数字、下划线组成,不能以数字开头,不能含空格,不能与关键字重名,并补充约定俗成的建议"见名知义、小写加下划线"。设计意图:把"变量"这个最抽象的难点前置处理,用三个可运行的小片段代替说教,让学生在"预测—验证—解释"的循环中自行建构概念。认知冲突不是教师制造的噱头,而是赋值语句的本质所决定的必然错误,把错误变成教学资源。环节三:任务二——数据的"身份"与类型转换教师将程序改造为用户交互版本:weight=input("请输入体重(kg):")height=input("请输入身高(m):")bmi=weight/(heightheight)print(bmi)学生运行后立刻遭遇红色报错:TypeError。教师不急于讲解,而是引导学生读报错信息第一行与最后一行,圈出关键词"str"和"unsupported"。随后发出诊断三问:input收回来的到底是什么?请用print(type(weight))查一查;字符串能参加除法运算吗?怎样才能把它变成数字?学生通过type()函数发现input返回的是字符串。教师类比讲解:字符串与数值虽然外观相似,但在计算机内部是两类完全不同的"物种",必须用类型转换函数完成转化。给出改写方案:weight=float(input("请输入体重(kg):"))height=float(input("请输入身高(m):"))bmi=weight/(heightheight)print(bmi)学生修改程序并成功运行。教师顺势组织小组讨论三种基本类型:整数int、浮点数float、字符串str,要求每组各举出生活中适合用三种类型表示的数据各一个(如人数、体温、身份证号)。教师适时点拨:身份证号虽然全是数字,但绝不参与运算,应存为字符串,让学生体会"类型由用途决定"的判断标准。设计意图:真实报错是最好的教材。让学生亲眼看到错误、亲手诊断错误、亲自修复错误,比我直接讲授类型转换有效得多。TypeError这条报错贯穿于整个Python学习生涯,此刻建立"读报错"的习惯受益长远。环节四:任务三——让输出专业起来程序能算,但输出是一串"21.321428571428"式的数字,既不美观也没有说明。教师展示两段输出对比,引出格式化输出的需求。讲解fstring格式化方法:print(f"身高:{height}米,体重:{weight}千克")print(f"你的体质指数BMI为:{bmi:.2f}")说明其中花括号内为变量或表达式,:.2f表示保留两位小数。学生修改程序,让输出变成一句话完整报告:"××同学,身高1.68米,体重58.0千克,BMI为20.54。"学有余力的学生完成拓展:查阅BMI参考区间,思考"如果要自动判断偏瘦/正常/偏胖,还需要什么知识",为下一课分支结构埋下伏笔。设计意图:输出格式化看似细节,实则关联着程序与用户的沟通质量这一工程意识。拓展问题指向未学内容,制造适度悬念,保持学习连续性。环节五:综合任务——分步设计"购物结算小程序"教师发布综合任务:文具店为学校社团采购,每件商品有单价与数量,程序需依次输入三种商品的单价与数量,计算并输出总花费。明确要求程序遵循"输入—处理—输出"三步结构,且每一段前面写上注释。给出半成品程序框架(关键行留空),基础层学生补全留空;提高层学生独立从头编写,并要求增加"满100元减10元"的结算逻辑(仅作顺序结构范围内的简单处理——用总价减10后输出两种情形说明,教师提示真正的判断留给下节课)。教师巡堂指导,重点观察三类典型问题并即时投屏讲评:第一类,忘记类型转换直接相乘,屏幕上出现"连续输出三次字符串"的怪异结果——这是字符串乘法特性,教师借此讲清"+"和""作用于字符串时的拼接与重复语义,学生印象深刻。第二类,变量名前后不一致导致NameError,引导学生在报错行往回找,体会标识符大小写敏感。第三类,输出格式随意,提醒程序也是"面向人写作",代码要让人读得懂。任务完成后,随机抽取三组学生进行作品演示,说清设计思路与调试过程。其余学生在学习单上贴源码截图并完成自评。设计意图:综合任务将零散知识点串联成完整程序,分层设计照顾差异。三类典型错误均来自真实课堂,巡堂即采集,现场生成讲评素材,比预设的例题更贴近学生实际。环节六:总结归纳与评价教师引导学生用思维导图共同回顾:程序的最小骨架是"输入→处理→输出";数据有家,这个"家"叫变量,命名有规矩;数据有身份,int、float、str各有所属,input收回来的是字符串,运算前要转换;语句按书写顺序从上往下执行,这就是顺序结构。课堂最后三分钟,学生完成学习单上的出口检测:阅读一段短程序预判输出结果;指出一段错误程序的两处问题。教师宣布下节课预告:让程序长出"判断力"——分支结构。七、板书设计主板书居中:3.2Python语言程序设计(第二课时)——顺序结构程序设计左侧板书:变量=存储数据的容器;赋值语句执行过程:算右边,存左边。中部板书:输入→处理→输出(箭头流程图)。右侧板书:数据类型表——int整数、float浮点数、str字符串;转换函数int()、float()、str();fstring输出要点。八、作业设计基础作业:编写"零花钱统计"程序,输入三个月的零花钱,输出总额与月均金额,金额保留一位小数。实践作业:在家长陪同下记录一次家庭用水量,编写程序计算水费(单价自定),并在程序注释里写清设计思路。思考作业:尝试修改BMI程序,让程序输出"偏瘦/正常/偏胖"的文字判断,记录尝试中遇到的障碍,下节课交流。九、教学评价设计本课采用过程性评价与结果性评价相结合。过程性评价依托学习单,记录学生在三次任务中的完成情况、报错经历与解决方式;结果性评价落在综合任务的程序作品上,从"能否运行、结构是否清晰、命名与注释是否规范、输出是否友好"四个维度进行打分。两个维度的评价均不设唯一标准答案,鼓励解题路径的多样性——同一结算问题,用中间变量与否、如何组织输出,皆可成立,只要逻辑自洽即视为有效作品。十、教学反思本课的核心经验有三点。其一,概念的教学必须走"体验先于定义"的路线。变量与赋值是本课最难的关口,靠定义背诵解决不了,唯有让学生在预测

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论