函数
意义: 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数名即可
定义
def 函数名(参数):
函数体
return 返回值(如果不写默认返回None)
函数返回值
return 返回值(触发return之后会强制停止函数的运行)
函数的调用
[返回值] = 函数名([实参值])
函数的参数
定义函数时的参数叫形参
调用函数时传入的参数叫实参
形参 = 实参
位置参数
- def test(x,y,z): # x,y,z 就是位置形参
print(x,y,z)
test(1,2,3) # 1 2 3 就是位置实参
关键字参数 (关键字参数只能在位置参数的后面)
- test(y=1,x=2,z=3)
默认参数(可以不传,使用默认值)
- def test(x,y,z=2):
print(x,y,z)
可变长度的参数
-
*args(接收位置参数)得到的是元组
- def foo(x, y, z=1, *args)
-
**kwargs(接收关键字参数)得到的是字典
- def foo(x,**kwargs):
def test(x,y,*args,**kwargs):
print("x:",x)
print("y:",y)
print("args:",args)
print("kwargs:",kwargs)
参数传可变对象和不可变对象
不可变数据类型函数内部形参发生修改不会影响实参
可变数据类型函数内部形参发生修改会影响实参
函数嵌套函数
def outer():
print("执行了outer函数")
def inner():
print("执行了inner函数")
inner()
outer()