基本语法
def 函数名(参数列表):
函数体
#计算斐波那契数列中小于参数n的所有值
def fib(n):
a,b = 1,1
while a < n:
print(a,end=' ')
a,b = b,a+b
fib(7)
- python中,如果函数没有写return 语句,或者执行了不返回任何值的return 语句,则,默认该函数以return None 结束,即返回空值
函数的参数
-
默认值参数:必须出现在参数列表的最右端
-
关键参数:按参数名字传递值
def fun(a,b,c = 1):
print(a,b,c)
fun(c = 3,b = 7,a = 8)
- 可变长度参数:
*p,用来接收任意多个实参放在元组里
**p,显示赋值多个参数,并将其放在字典里
def demo(*p):
print(p)
demo(1,2,3)
def demo1(**p):
print(p)
demo1(a = 1,b = 2,c = 3)
变量的作用域
一般地,函数内部定义的变量为局部变量,函数外部定义的变量为全局变量
- 在函数内部修改定义在函数外的变量值,那么该变量的作用域必须是全局的,在函数内部可以通过global声明
lambda表达式
- 作用:用来声明匿名对象,即没有函数名字临时使用的小函数
- lambda表达式只可以包含一个表达式
f = lambda x,y,z :x + y +z
print(f(1,2,3))