python函数
小菜星航 人气:0传递实参
函数定义中可能包含很多的形参。因此函数调用的过程中也能包含多个实参。向函数传递实参的方式有很多。如果实参的顺序与形参的顺序相同的情况下可以使用位置实参。也可以使用关键字实参,其中每个实参都由变量名和值组成。
位置实参
在调用函数时,python必须将函数调用中的每个实参都关联到函数定义中的一个形参,也就是根据形参名称进行实参的传递,最简单的关联方式是实参的顺序,这种关联方式便是位置实参。
def cale(a,b): c=a+b return c result=cale(6,8) print(result)
在上方代码块中我们首先使用def语句创建一个函数,函数名为cale,函数名后的括号运算符中定义a,b占用了两个实际参数的位置。那么a和b占用实际值的位置所以他叫做形参。a,b叫做形式参数简称形参。形参的位置一般在函数的定义处,所以我们在def函数后的括号后的括号里添加两个形参为a,b。在下方result=cale(6,8)中,6和8被称为实际参数的值,简称实参,实参的位置出现在函数的调用处。
14
如上面所示我们可以看出6传给了a,8传给了b。这是按照位置传递的。因为6在实参的第一个位置。而a在形参的第一个位置所以6就传递给了a也就是a=6.同理因为8在实参的第二个位置而b在定义处的第二个位置所以b=8。因此c=a+b,为14.
关键字参数
关键字实参时传递给函数的名称键--值对。直接在实参中将名称和值关联起来。因此向函数传递实参时不会混淆。关键字实参可以无需考虑,函数调用中实参的顺序,可以清楚指出函数调用中各个值得用途。
def cale(a,b): c=a+b return c result=cale(b=6,a=8) print(result
14
因为在实参中b的赋值为6,a的赋值为8在定义处的b因为b的赋值为6所以在定义处b的值为6,a的赋值为9,所以在定义处a的值为8.
函数定义的默认参数值
函数定义时给形参设置默认值,只有与默认值不符的时候才需要传递实参。
函数参数的定义
·个数可变的位置参数
(1)定义函数时,可能无法事先确定传递的位置实参的个数时,使用可变的位置参数。
(2)使用*定义个数可变的位置参数。
(3)结果为一个元组。
def new(*args): print(args) new(10) new(11,22,33)
(10,) (11, 22, 33)
个数可变的关键字形参
(1)·定义函数时,没办法事先确定传递的关键字实参的个数时,使可变的关键字形参。
(2) ·使用**定义个数可变的关键字形参。
(3) ·结果为一个字典。
def new(**args): print(args) new(a=10) new(a=11,b=22,c=33)
{'a': 10} {'a': 11, 'b': 22, 'c': 33}
总结
加载全部内容