随着学习的深入,慢慢发现基本知识才是一门语言的基础,就想拼音对于语文来说一样,基础不牢固上边的楼越高越危险,现在想去学着网页开发,做一个自己的网站,不管怎样还是得踏实的学习基础知识,学习完嵩天老师的课程之后就得继续学习GitHub上的教程,并且要熟练使用GitHub,与标准程序员接轨。好了让我们继续学习python的函数知识吧。
学习框架:
- 函数的理解以及定义
- 函数的使用及调用过程
- 函数的函数传递
- 函数的返回值
- 局部变量和全局变量
- lambda函数
函数的定义
- 函数是一段到代码的表示,是一段具有特定功能的,可以重用的语句组
- 函数一种功能的抽象,一般函数表达特定功能
- 两个作用:降低编程难度以及代码的复用
函数的语法结构
def <函数名>(参数(零个或者多个)):
<函数体>
return<返回值>
#### 函数的调用
def fact(n) :
s = 1
for i in range(1, n+1):
s *= i
return s
fact(10)
上述程序我们可以看出,fact()为定义的函数 ,n 为参数名,函数的调用过程就是将给出的实际参数 fact(10)替换函数体中的 n 进行运算,最后返回 s 。这个就是函数的大体上的运用过程。
函数的个数问题:函数个数可以有零个或者多个,也可以没有参数,但是必须要保留括号
函数的返回值
- 函数用return返回结果,可以返回0个或者多个结果
- 函数可以用有返回值,也可以没有,return可以有也可以没有
局部变量和全局变量
n,s = 10,100 # n,s 都是全级变量
def fact(n): # 此处的n,s为函数内的局部变量
s = 1
for i in range(1,n+1):
s *= i
return s
print(favt(n),s) # 此处的n,s为全部变量
使用规则
- 基本数据类型,无论是否重名,局部变量郁全局变量不同
- 可以通过global保留字在函数内部声明去全局变量
- 组合数据类型,如果局部变量未真是创建,则是全局变量
lambda函数
- lambda函数犯规函数名作为结果
- 一般用于简单男的多能在一行函数以内表示
语法结构L:
<函数名> = labda<参数>:<表达式>
f = lambda x,y:x + y
f (10,15)
结果为25
lambda函数的应用
- 主要用作一些特定的函数或者方法的参数
- 有一些固定使用方式需要慢慢掌握
- 一般情况下,建议使用def定义普通函数