day14 学习笔记

def 函数名(参数):
"""描述"""
函数体
return
1.函数参数:分实际参数和形式参数
形参:在函数定义阶段所定义得参数
实参:函数在调用阶段所传入的参数
关系:在函数调用的过程中实参绑定给形参,在函数结束调用的时候这种绑定关系就会解除
2.位置参数:按照从左到右的顺序依次定义的参数
def func(x,y)
func(1,2)
位置形参:必须被传值,不能多也不能少
位置实参:一一对应给形参调用,从左到右顺序
3.关键字参数:按照key=value的一个形式来传值
def func(x,y)
func(y=1,x=2)
关键字形参:就是类比形参的概念
关键字实参:完全可以不用按照顺序按照我们指定的值来进行传参
混用:1.位置参数必须要放在关键字参数的左边
func(1,y=2)
2.对于同一个形参我们不能多次赋值
func(1,x=2)
默认形参 :在函数定义阶段,我们就为参数赋予一个默认的值
def func(x,y,z=3)
形参混用 1.位置形参必须在默认形参的左面
2.参数被默认赋值时是绑定了一个内存地址
3.虽然默认值是可以被定义成任意变量,但是我们还是要尽量避免将其定义为可变量
可变长度参数:传入的值是不固定的
可变位置参数
1.可变位置形参:用来接收传入值的溢出部分,*会将溢出部分的值转化为元组传递给函数体
def func(x,y,*参数名)args
func(1,2,*(3,4,5))
2.可变位置实参:*可以用在实参中,将*后的一个整体数据拆分成位置数据
可变关键字参数
1.可变关键字形参:用来接收传入关键字参数值的溢出部分,**会将溢出部分的值转化为字典传递给函数体
def func(x,y,**参数名)kwargs{"name":egon}
func(1,2,name = egon,age = 18)
2.可变关键字实参:**可以用在实参中,将**后的一个整体数据拆分成关键字数据
混用:*要在**之前

posted @ 2020-03-18 21:50  TopJocker  阅读(121)  评论(0编辑  收藏  举报