教科版信息技术必修1 2.4可以复用的代码 课件(共27张PPT+内嵌视频)

文档属性

名称 教科版信息技术必修1 2.4可以复用的代码 课件(共27张PPT+内嵌视频)
格式 zip
文件大小 7.0MB
资源类型 教案
版本资源 教科版(2019)
科目 信息技术(信息科技)
更新时间 2025-07-12 16:22:31

文档简介

(共27张PPT)
知识回顾
分支结构:根据不同的条件判断来决定程序执行走向的结构,可以使用if分支语句实现。
if 条件表达式1:
语句块1
elif 条件表达式2:
语句块2
……
elif 条件表达式N:
语句块N
else:
语句块N+1
if 条件表达式:
语句块1
if 条件表达式:
语句块1
else :
语句块2
单分支
双分支
多分支
思维导图
2.4可以复用的代码
-垃圾分类
假设,你是一位编程元宇宙的“垃圾分类厂”厂长,现在工厂初创,还是“人工”分拣,假设人员一次性最多分类三种垃圾。
请你打开“导入程序”,说一下这段代码给你什么感觉?
“垃圾分类厂”初创困境
情景
1.代码重复、冗长
2.书写、阅读起来效率低下
我们编写的程序代码中有许多功能是相似甚至完全相同的,这时可以考虑代码复用的方法提高程序的效率。
在用算法解决问题的过程中,经常采用模块化程序设计思想,将问题分解成若干个子问题,并用相对独立的程序段来针对性的解决各个子问题,提高程序设计的效率。对于常用的程序代码,以模块化的形式进行保存,需要时可重复调用。
  在Python中,主要利用函数、模块等方式实现模块化程序设计。
设计思想
  函数是一段具有特定功能的、可复用的语句组,用函数名来表示并通过函数名进行功能调用。
  每次使用函数可以提供不同的参数作为输入,以实现对不同数据的处理;函数执行后,还可以反馈相应的处理结果。
  函数能够完成特定功能,与黑盒类似,对函数的使用不需要了解函数内部实现原理,只要了解函数的输入输出方式即可。
函数的定义
  使用函数主要有两个目的:降低编程难度和代码复用。函数是一种功能抽象,利用它可以将一个复杂的大问题分解成一系列简单的小问题,然后将小问题继续划分成更小的问题,当问题细化到足够简单时,就可以分而治之,为每个小问题编写程序,并通过函数封装,当各个小问题都解决了,大问题也就迎刃而解。这是一种自顶向下的程序设计思想。
  函数可以在一个程序中的多个位置使用,也可以用于多个程序,当需要修改代码时,只需要在函数中修改一次,所有调用位置的功能都更新了,这种代码复用降低了代码行数和代码维护难度。
函数的作用
……
print()
input()
range()
思考:我们已经学习了哪些函数?
类 别 函 数 举 例
系统函数(即函数库中的标准函数,是程序设计语言或操作系统提供给用户的一系列已经编制好的程序) 数学运算类 min():求最小值
max():求最大值
abs():求绝对值
sqrt():求平方根
pow():求幂
数据转换类 int():转换成整型
float():转换成浮点型
str():转换成字符型
bool():转换成布尔型
字符串操作类 len():求字符串的长度
mid():字符串中间截取
输入输出类 input():输入函数
print():输出函数
文件操作类 open():打开文件
自定义 函数 用户自己编写的 一段程序 factorial()、
match_num()
项目主题
设计“垃圾分拣机”
01
02
03
基础任务1:打造“垃圾分拣机”样机
基础任务2:打造“垃圾分拣机1.0”
基础任务3:打造“垃圾分拣机2.0”
04
进阶任务4:打造“新垃圾添加机”
05
拓展任务5:综合“垃圾分拣机”
Python 目前还没有能实现“垃圾分拣机”逻辑的内置函数。所以,我们要定义一个专属的“垃圾分拣机”函数。
01
打造“垃圾分拣机”样机
基础任务
函数一般包括函数名、参数、返回值和函数体等四部分。其中,函数名和函数体是必不可少的,参数和返回值可根据需要进行定义。
首先,我们先来定义一个无参数、无返回值的自定义函数。
01
打造“垃圾分拣机”样机
基础任务
def 函数名( ):
语句或语句组
函数体
def 关键字( define 的缩写),它是自定义函数的固定格式
函数名需要遵守一定的命名规则,“见名知意”
函数体要缩进,体现函数具备什么功能
函数的定义和调用
程序执行时由于def块中的代码不是主程序的一部分,因此会跳过该段代码,从主程序的第一行开始运行。
在遇到函数的调用语句时,转到函数中的第一行代码开始执行。
先定义
后调用
函数的定义和调用
函数的执行流程:
先创建函数;
执行代码直到调用函数;所谓调用函数就是使用这个函数。调用函数的语法:函数名()
调用函数以后执行函数内部的代码块。
01
打造“垃圾分拣机”样机
基础任务
打开“垃圾分拣机样机”半成品程序,小组合作补全代码,并调用该函数,输出结果如下:
观察程序发现并没有真正的实现代码复用,下面我们将样机进行升级。
  我们逐步升级这个“垃圾分拣机”,给它安装一个“控制系统”:参数,然后我们就可以通过参数来灵活控制分类过程了。
02
打造“垃圾分拣机1.0”
基础任务
def 函数名(形式参数):
语句或语句组
在 Python 中,参数是函数要接收并对其进行处理的数据。
形参(形式参数):函数定义时的参数,实际上就是变量名。
实参(实际参数):函数调用时的参数,实际上就是变量的值。
【注意】函数的参数可以是零个,一个,也可以是多个,当有多个参数时,各个参数之间用逗号隔开。
先定义
后调用
函数名(实际参数)
参数传递要
一一对应
02
打造“垃圾分拣机1.0”
基础任务
打开“垃圾分拣机1.0”半成品程序,小组合作将程序修改为带参数的自定义函数,并调用该函数,输出结果如下:
函数的返回值
03
打造“垃圾分拣机2.0”
基础任务
  return 语句的功能是从函数内部返回值。咱们再进工厂,完善一下我们的“垃圾分拣机”,给它增加一个“垃圾出口” ,打造“垃圾分拣机2.0”。
def 函数名(形式参数):
语句或语句组
return 返回值
函数体
函数名(实际参数)
先定义
后调用
参数传递要一一对应
03
打造“垃圾分拣机2.0”
基础任务
  return 语句的功能是从函数内部返回值。咱们再进工厂,完善一下我们的“垃圾分拣机”,给它增加一个“垃圾出口” ,打造“垃圾分拣机2.0”。
打开“垃圾分拣机2.0”半成品程序,小组合作将程序修改为带参数和返回值的自定义函数,并调用该函数,输出结果如下:
函数的执行过程
函数体
实际参数
返回值
函数名
形式参数
执行过程:
程序执行时由于def块中的代码不是主程序的一部分,因此会跳过该段代码,从主程序的第一行name1="玻璃瓶"开始运行。
在遇到函数的调用语句classify(name1)时,转到函数中的第一行代码开始执行。
函数运行时,变量name会被赋值为"玻璃瓶"。函数执行完成返回"可回收垃圾",
然后回到语句classification = classify(name1),将返回值赋给变量classification,因此classification="可回收垃圾",最后输出玻璃瓶 属于 可回收垃圾。
04
打造“新垃圾添加机”
进阶任务
打开“新垃圾添加机”半成品程序,小组合作完善程序,并调用该函数,实现添加新垃圾的功能。
05
综合“垃圾分拣机”
拓展任务
至此,组装“垃圾分拣机”所需的所有零件都已经完成了,再组装这些零件,就能完成成品的“垃圾分拣机”了,请同学们小组合作探究完成。
算法流程图如下:
课堂小结
def 函数名(形式参数):
语句或语句组
return 返回值
函数体
函数名(实际参数)
先定义
后调用
参数传递要一一对应
函数名:同变量命名规则,要“见名知意”
参数:用于向函数传递值的,参数传递要对应
函数体:要缩进,体现函数具备什么功能
返回值:将表达式的值返回给调用者
参数、返回值可0个或多个,如多个以逗号分隔
下节预告
同学们运行“垃圾分拣机”程序,允许添加新的垃圾,每次重新运行程序,用户上次输入的新垃圾和分类没有保存,请思考一下这是什么原因造成的?
原因:列表更新只在内存中,每次运行都会重新初始化列表。如果需要在程序重启后仍然保留这些分类信息,需要将数据写入文件,并在程序启动时从文件中读取它。
目前,尽管我国在垃圾分类方面还面临着技术和资金的挑战,但随着人工智能技术的飞速发展,我们有理由相信,垃圾分类的智能化、自动化处理终将成为现实。
让我们从身边的小事做起,节约用纸、减少一次性用品的使用、不乱扔垃圾……用实际行动呵护我们共同的家园,因为每一份努力,都可能成为改变世界的力量。
让我们携手行动,为构建一个更加绿色、可持续的未来贡献自己的力量!