以下转自其它博客。觉得总结得太好了,所以拿来自己参考一下。
python中函数参数的传递是通过赋值来传递的。
函数参数的使用又有俩个方面值得注意:
1.函数参数是如何定义的
2.在调用函数的过程中参数是如何被解析
先看第一个问题,在python中函数参数的定义主要有四种方式:
1.F(arg1,arg2,...)
这是最常见的定义方式,一个函数可以定义任意个参数,每个参数间用逗号分割,
用这种方式定义的函数在调用的的时候也必须在函数名后的小括号里提供个数相
等的值(实际参数),而且顺序必须相同,也就是说在这种调用方式中,形参和
实参的个数必须一致,而且必须一一对应,也就是说第一个形参对应这第一个实参。
例如:def a(x,y): print x,y
调用该函数,a(1,2)则x取1,y取2,
形参与实参相对应,如果a(1)或者a(1,2,3)则会报错。
2.F(arg1,arg2=value2,...)
这种方式就是第一种的改进版,提供了默认值def a(x,y=3): print x,y
调用该函数,a(1,2)同样还是x取1,y取2,
但是如果a(1),则不会报错了,这个时候x还是1,y则为默认的3。
上面这俩种方式,还可以更换参数位置,比如a(y=8,x=3)用这种形式也是可以的。
3.F(*arg1)
上面俩个方式是有多少个形参&#x