函数初识
什么是函数?
函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。
函数的优点、好处是什么?
减少代码的重复率,可读性强
函数的分类
-
内置函数
为了方便我们的开发,针对一些简单的功能,python解释器已经为我们定义好了的函数即内置函数。对于内置函数,我们可以拿来就用而无需事先定义,如len(),sum(),max()
-
自定义函数
根据自己的需求,事先定义好含有某种功能的函数,需要的时候调用即可
定义函数的语法
def 函数名(参数1,参数2,参数3...):
"""注释"""
函数体
return 返回值
函数的参数
-
实参
- 位置参数 (严格按照位置顺序一一对应传参,有几个形参就要传入多少个实参)
- 关键字参数 (a=1,b=2)
- 混合传参 (位置参数一定要在关键字参数前面)
def foo(a,b,c,*args,x=1,y,z,**kwargs): print(a,b,c) print(args) print(x,y,z) print(kwargs) foo(1,2,3,4,4,5,6,54,x=5,y="a",z="sss",name="summer",aeg=23)
-
形参
- 位置参数 (按照顺序一一对应)
- 默认参数 (不传值用默认,传值覆盖
如果默认参数指向可变数据类型,那么它的内存在地址是不变的) - 不定传参(
*args,**kwargs,在函数定义时,*、**代表聚合,在函数执行时,*、**代表打散
)
形参的参数顺序:
位置参数、*args、默认参数、**kwargs
函数的返回值
函数的返回值:return
- 结束函数
- 给函数的执行者返回值
- return 单个值 alex
- retuen 多个值 (1,"alex")
- retuen 无返回值 None
函数的调用
函数名本质上就是函数的内存地址。
- 可以被引用
- 可以被当作容器类型的元素
- 可以当作函数的参数和返回值
函数名()即可调用,同时需要注意的是,在函数没有调用前,它就是一个代码块,没有任何意义,只有调用它时,才会执行函数的内部代码
第一类对象(first-class object)指
- 可在运行期创建
- 可用作函数参数或返回值
- 可存入变量的实体。