函数与Lambda表达式
今天的打卡,原本要用两天时间去学习,之前老师在讲课的时候已经讲过相关的知识,所以就写一下自己的学习总结、
函数
它是一段具有特定功能的、可重复使用的语句组,用函数名来表示并通过函数名进行功能调用。函数也可以看做是一段具有名字的子程序,可以在需要的地方调用执行,不需要在每个执行的地方重复编写这些语句。每次使用函数可以提供不同的参数作为输入,以实现对不同数据的处理;函数执行后,还可以反馈相应的处理结果。
严格来说,函数是一种功能抽象。
在python 中,有些函数是用户自己编写的,被称为自定义函数。python也自带了一些函数和方法,包括Python内置函数(如abs()、eval()、),python标准库中的函数(如math库中的sqrt())等,都是相关的例子。
python使用def 保留字(在这里可以回忆一下python33个保留字)
1 Python 3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:04:45) [MSC v.1900 32 bit (Intel)] on win32
2 Type "help", "copyright", "credits" or "license" for more information.
3 >>> import keyword
4 >>> keyword.kwlist
5 ['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue',
'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if',
'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return',
'try', 'while', 'with', 'yield']
Python通过def 保留字定义一个函数,语法形式如下:
def <函数名>(<参数列表>):
<函数体>
return <返回值列表>
函数的参数传递这一部分知识,要区别形参和实参这两个概念,(挺好区分的,嘻嘻)
Lambda表达式
平时我们定义函数会使用def来定义,那么当你想使用一个函数,并且只是临时使用它一下,就没有必要非得给它起一个名字,因此lambda表达式派上了用处,使用lambda隐函数的自定义函数:
Python提供了一种非常有趣、精简好用的一行自定义函数的方法lambda,这是一种可以实现一行语句、用完即丢的自定义函数。语法形式是:
函数名=lambda 参数列表:执行语句
其实,它对应的标准自定义函数形式:
def 函数名称(参数列表):
return 语句内容
lambda函数有自己的命名空间,不能访问自己参数列表以外的或者全局命名空间的参数,它的主题是 一个表达式,而不是一个代码块。
下面写一个实例
f=lambda x ,y: x+y
print(type(f))
print(f(10,12))
输出结果为
<class 'function'>
22
这是lambda函数比较通俗的用法,在后面的学习和应用中会有比较高级的用法。