一、课堂引入
随着课程的学习,我们写的代码越来越复杂,为了解决我们繁杂的代码问题,我们可以使用一些方法将我们的程序变得更加井然有序。比如我们可以通过几种魔法将程序分成几个小的部分,主要有三种魔法,分别是函数、模块和对象。
函数是编程中最基本的魔法。
二、什么是函数?
想象生活中的例子,修理工需要实现准备好工具箱里面放好锤子,扳手,钳子等工具,然后遇到锤钉子的场景,拿来锤子用就可以,而无需临时再制造一把锤子。 修理工===>程序员 具备某一功能的工具===>函数
要想使用工具,需要事先准备好,然后拿来就用且可以重复使用 要想用函数,需要先定义,再使用
为什么要用函数?
#1、代码的组织结构不清晰,可读性差 #2、遇到重复的功能只能重复编写实现代码,代码冗余 #3、功能需要扩展时,需要找出所有实现该功能的地方修改之,无法统一管理且维护难度极大
三、函数的分类
#1、内置函数 为了方便我们的使用,针对一些简单的功能,python解释器已经为我们定义好了的函数即内置函数。
对于内置函数,我们可以拿来就用而无需事先定义,如abs(),len()
abs() 函数返回数字的绝对值。
len() 返回字符串、列表、字典、元组等长度
实例1:
a=-66 b=abs(a) print(b)
实例2:
a="hello world" b=len(a) print(b)
#2、自定义函数 很明显内置函数所能提供的功能是有限的,这就需要我们自己根据需求,事先定制好我们自己的函数来实现某种功能,以后,在遇到应用场景时,调用自定义的函数即可。例如
四、定义函数
如何自定义函数?
#语法
def function (arg1,arg2):
def 函数名(参数1,参数2,参数3,...): '''注释''' 函数体 return 返回的值 #函数名要能反映其意义
# def:定义一个函数
# function:函数的名字
# 括号:可传入参数
# 冒号:代码块
五、函数的使用规则:先定义,后调用
函数即“变量”,“变量”必须先定义后引用。未定义而直接引用函数,就相当于在引用一个不存在的变量名 #测试一 def foo(): print('from foo') bar() foo() #报错 #测试二 def bar(): print('from bar') def foo(): print('from foo') bar() foo() #正常 #测试三 def foo(): print('from foo') bar() def bar(): print('from bar') foo() #会报错吗? #结论:函数的使用,必须遵循原则:先定义,后调用 #我们在使用函数时,一定要明确地区分定义阶段和调用阶段 #定义阶段 def foo(): print('from foo') bar() def bar(): print('from bar') #调用阶段 foo()
六、总结
函数就是完成某个工作的代码块,就像乐高积木。
函数能提高应用的模块性,和代码的重复利用率。
使用不同函数,可以完成一个复杂的任务。