日期:2020年1月4日
作者:Commas
注释:学习就是为了忘记,对python3函数来一个小结。
如果您想了解更多有关Python的知识,那么请点《我的Python浅谈系列目录》
一、函数是什么?
(1)数学上的函数
- f(x) = x + 1
- f(x) = x2 + 2
- f(x) = 3x3 + 2x2 + 3
- f(x) = cos(x3) + 2sin2(x) + 4
是否回到了那些年的时光,回到教室座位前后,故意讨某个人温柔的骂,黑板上的函数
,你舍得解开吗?
好啦,言归正传,上面就是所谓的函数啦,就是陪伴我们走过了多少个学生岁月的函数,现在也陪伴着我们,在工作中发光发热。
函数的使用也是非常简单——函数名(参数)
,比如使用f(1)就是调用函数,使 x = 1,求得函数的值。其中“x”就是所谓的形参
,而“1”就是所谓的实参
。
(2)程序上的函数
不急着给Python函数定义,就像学文言文一样,先背着,后面自然通。话不多说,先来看看,数学上的函数翻译成Python的函数,到底是个啥样?同时也看看是如何调用我们定义的函数,以下为函数f(x) = x + 1
的示例:
- 了解版:
# (1)函数的定义
def f(x):
"""此处函数说明:值加一"""
return x + 1
# (2)函数的调用
f(1) # 结果为:2
f(2) # 结果为:3
f(3) # 结果为:4
- 推荐版:
# (1)函数的定义
def add_one(num):
"""值加一"""
return num + 1
# (2)函数的调用
add_one(1) # 结果为:2
add_one(2) # 结果为:3
add_one(3) # 结果为:4
为什么有推荐版呢?是因为程序中的函数和数学上的程序还是有不一样的,程序中如果函数名字处处都是f的话,那么将会乱套,所以必须要有一套比较推荐的命名规范来规范函数的命名,最好见名知意。如果想了解更多,可以去看我博客中另外一篇文章《Python3之命名规范浅谈》,我在这里就不再赘述了。
知识加油站:Python中使用关键字
def
定义,def为define的缩写。
二、函数的几种形式
(1)无参函数
- 无返回值
def function_name():
"""此处可以写需要封装的逻辑"""
pass
- 有返回值
def function_name():
"""此处可以写需要封装的逻辑"""
pass
return return_value
- 返回值说明
返回值 | 说明 | 示例函数或代码段 | 调用示例1 | 调用示例2 |
---|---|---|---|---|
return_value | 普通返回值 | return value | return 1 | return 2 |
return_value | 元组返回值 | return value1,value2 | return 1,2 | return 2,3,4 |
(2)有参函数
- 无返回值
def function_name(param,*args,**kwargs,default_param=default_value):
"""此处可以写需要封装的逻辑"""
pass
- 有返回值
def function_name(param,*args,**kwargs,default_param=default_value):
"""此处可以写需要封装的逻辑"""
pass
return return_value
- 参数、返回值说明
参数 or 返回值 | 说明 | 示例函数或代码段 | 调用示例1 | 调用示例2 |
---|---|---|---|---|
param | 普通参数 | sum_num(num1,num2) | sum_num(1,2) | sum_num(2,3) |
*args | 元组参数 | sum_num(*args) | sum_num(1,2,3,4) | sum_num(*(1,2,3,4)) |
**kwargs | 字典参数 | sum_num(**kwargs) | sum_num(k1=1,k2=3) | sum_num(**{k1=1,k2=2}) |
default_param=default_value | 关键字参数 | sum_num(num1,mun2=1) | sum_num(1),此时关键字参数num2=1(默认值) | sum_num(1,2),此时关键字参数num2=2 |
return_value | 普通返回值 | return value | return 1 | return 2 |
return_value | 元组返回值 | return value1,value2 | return 1,2 | return 2,3,4 |
三、特殊函数(匿名函数)
匿名函数定义格式:
函数名 = lambda 参数 :返回值
- 参数可以是多个,用英文逗号隔开
- 匿名函数只允许写一行,不能想正常函数写多行
- 返回值可以是任意的数据类型
现在将普通函数add_one(num)
写成匿名函数,如下:
add_one = lambda num: num + 1
版权声明:本文为博主原创文章,如需转载,请给出:
原文链接:https://blog.csdn.net/qq_35844043/article/details/103764717