函数参数有几种形式 --------------------------- 可以分两方面来解释,定义时的函数参数形式和调用时参数形式,有以下几种情况, * 位置参数,在调用时根据其位置来传递相应的实参值。 * 关键字参数,在调用时使用key=value的形式来传递参数, key为实际的变量名。value 为实际的变量值 * 默认参数,在定义时提供默认值,在调用时,可以不传递该参数而使用默认值。 * 可变参数列表,是指在调用时参数数量可变,在定义函数时形参参数通过*args,”**kwargs“来定义。 什么是位置参数 '''''''''''''''' 是指在调用时根据其位置来传递相应的实参值。 什么是关键字参数 ''''''''''''''''''''' 关键字参数是指调用时提供了关键字,关键字参数在使用时必须在位置参数之后。 位置参数是指传递参数时,不指出其参数名,在调用时仅根据其位置将实际参数传给其形式参数。 什么是默认参数 '''''''''''''''' 默认参数就是在定义时提供默认值,在调用时,如果不传递该值时,就使用该默认值。 默认参数在定义时,必须在所有的位置参数之后。 什么是可变长度的参数 ''''''''''''''''''''' 是指在函数中,可以使用元组和词典来传递可变长度的参数,在定义函数时采用一个星号和两个星号来传递 元组和词典,函数内部使用元组和词典``(*args,**kwargs)``。如: :: def fn(*t, **k): """此时t是元组, k为词典""" pass 在调用fn()函数时,有两种形式调用,分别为: fn(*t, **k) t为元组或列表,k为词典,或使用以下形式: fn(a, b, c, k1="", k2="")