函数是模块化编程的第一步,学好函数的应用是每个程序员的必经之路。上节讲解了关于Python函数的基础用法,包含基本的定义,简单的调用。在Python中关于函数有很强大的功能,下面将一一进行说明。
- 函数参数
函数参数是函数的核心,用好参数了,函数的精华基本上也就掌握了。在Python中函数的参数是可以有多种形式的,有默认参数的函数、关键字参数的函数、可变参数的函数。理解这些类型的参数需要在代码中来体会,通过代码了解不同类型的参数的区别和用途。
- 默认参数的函数
默认参数是指:给定的函数的参数有一个默认值,先来看怎么定义有一个有默认参数的函数:
def default_para_func(p1,p2=2): x=p1*10+p2*3 return x
以上函数中第二个参数p2就是一个默认参数,默认值为2,下面来看看调用这个函数的结果:
print(default_para_func(1)) 运行结果为:16
上面传入的参数为P1=1,P2并没有传值,采用默认值2来计算.
print(default_para_func(1,3)) 运行结果为:19 调用的时候传入参数 p1=1,p2=3 ,则传了值之后就按照传入的值来计算
- 可变参数
可变参数,顾名思义参数是可变的,不是固定的,可以接受任意数量的参数。直接看代码:
def more_para_func(p1,*p): x=p1*sum(p) return x
上述代码中*p为可变参数,下面来看看可变参数怎么传参:
print(more_para_func(1,2,3,4)) print(more_para_func(1,2,3,4,5,6))
数据的个数可以随便定义,有木有很强大,看看运行结果吧
9 20
- 关键字参数
在调用有关键字的参数函数时,需要强制传入关键字,怎么理解呢?先看代码
def kw_para_func(p1,*,kw): x=p1+kw return x
上面定义了一个有关键字参数的函数,强制关键字参数放到某个*参数或者单个*后面,来调用一下这个函数吧
print(kw_para_func(9,1))
运行一下看看结果:
报错了,那正确的应该怎么调用呢?再看看
print(kw_para_func(9,kw=1)) 运行结果 10
通过以上代码可以明显看到,第二个关键字参数的传递必须带上参数名称作为关键字,使用强制关键字参数会比使用位置参数表意更加清晰,程序也更加具有可读性。
2.匿名函数
匿名函数,顾名思义就是没有函数名的函数,还是来看一段简单的代码
anonymous_fun=lambda p1,p2:p1*p2+10 print(anonymous_fun(1,2)) 运行结果:12
匿名函数的定义关键字:lambda,lambda表达式允许你定义简单函数,但是它的使用是有限制的。 你只能指定单个表达式,它的值就是最后的返回值。也就是说不能包含其他的语言特性了, 包括多个语句、条件表达式、迭代以及异常处理等等。
以上就是关于函数的核心用法了,相信学习了函数的这两节,对函数的使用应该可以得心应手了。
更多关于Python的精彩,欢迎点击右上角”关注“红色按钮,关注小编获得更多的Python免费课程。
下一节 Python基础入门18节-第十一节 换个思路学迭代,或许就容易了