****大学
《Python语言程序设计》教案
20-20学年第学期
课程名称:Python语言程序设计
授课教师:
职称:
开课部门:
20**年*月*日
****大学
《Python语言程序设计》教案
授课教师
班级
学时
授课日期
教学任务
项目四:函数的应用——模拟探月工程
授课方式
□理论讲授
R理实一体
授课地点
□多媒体教室
R实训室
主要参考资料
教材、Python官方文档、网络技术社区等
教学目标
素质目标:
①培养模块化工程思维(航天系统工程理念);
②强化代码复用意识,理解协同开发对国家重大科技工程的意义;
③树立自主创新信念,通过探月案例增强科技报国使命感。
知识目标:
①掌握函数的定义、调用与返回值机制;
②理解4种变量作用域(局部/嵌套/全局/内置);
③精通5类参数传递(必需/默认/关键字/可变长度);
④掌握模块与包的创建导入方法;
⑤理解递归与匿名函数的应用场景。
能力目标:
①设计探月工程模拟函数(轨道计算、着陆控制);
②构建模块化探月系统(分离燃料计算、通信控制等模块);
③通过包组织复杂工程代码。
教学内容
1.函数基础
-内置函数与自定义函数、参数传递、返回值
2.变量作用域
-4种作用域、global/nonlocal关键字
3.模块与包
-模块创建导入、包结构设计
4.高阶函数
-递归函数、匿名函数
重点难点
重点:三内置函数与自定义函数、参数传递、返回值
难点:递归函数、匿名函数
教学方法
启发式教学法、分组讨论法、演示法、案例讨论法
素材资源
R文本素材□实物展示RPPT幻灯片
□音频素材R视频素材R动画素材
□图形/图像素材R网络资源□其他
课后作业
1.创建着陆控制包:含thrust_calculation.py(默认参数计算推力)、terrain_analysis.py(返回坡度/硬度元组);
2.编写递归函数:模拟火箭分级分离(n级时返回分离时间序列)。
PAGE
PAGE3
教学过程及内容
一、导入新课【约10分钟】
(1)工程场景切入:
探月工程涉及轨道计算、着陆控制、数据传输等复杂子系统,需通过函数实现模块化开发。Python函数如同航天器组件——内置函数是标准部件,自定义函数是专用设备。
(2)核心问题链:
提问①:如何用函数模拟多级火箭分离?(引出函数嵌套调用)
提问②:当着陆器遭遇突发地形时,如何通过参数传递实时调整策略?(引出关键字/可变参数)
(3)科技价值关联:
探月工程要求代码健壮性(非法输入合理处理)、高效性(内置函数执行效率高于标准库),呼应行业企业标准。
二、新知识点、技能点讲解【约70分钟】
新课讲解1:Python函数基础【约30分钟】
(1)内置函数特性:
内置函数随解释器启动生效(如input()/print()),是Python核心组件。其设计原则:仅将高频或语言紧密绑定的函数内置化,避免解释器臃肿。
(2)自定义函数机制:
定义语法:def函数名(参数):+缩进函数体。与C语言不同,Python无需声明返回值/参数类型。
(3)参数传递精要:
①必需参数:按位置顺序传递(如calc_trajectory(100,50));
②默认参数:简化调用(如set_thrust(power=100,backup=True));
③关键字参数:按名称指定(adjust_altitude(velocity=2000,angle=45));
④可变长度参数:
(4)返回值机制:
return语句向主调函数输出数据。无return时自动返回None。多返回值实质是元组,如轨道坐标:returnx,y,z。
新课讲解2:变量作用域【约15分钟】
(1)四种作用域:
①局部作用域:函数内部变量;
②嵌套作用域:外层函数变量;
③全局作用域:模块级变量;
④内置作用域:Python预定义。
(2)作用域管理:
①global声明修改全局变量
②nonlocal修改嵌套作用域变量
新课讲解3:自定义模块与包【约25分钟】
(1)模块化优势:
①隐藏实现细节,聚焦高层逻辑;
②代码复用(如多探月任务共享轨道计算模块);
③促进团队协作。
(2)模块操作
(3)包组织结构:
包是分层次的文件目录:
①创建包目录(如/moon_mission);
②添加__init__.py文件(可为空);
③嵌套子包(如