关键字参数
关键字参数和函数调用关系紧密,函数调用使用关键字参数来确定传入的参数值。
使用关键字参数允许函数调用时参数的顺序与声明时不一致,因为 Python 解释器能够用参数名匹配参数值。
有如下代码:
#coding:UTF-8
def printfunction(name,age):
print "Name:",name
print "Age:",age
return
printfunction(age=20,name="tw")
输出结果:
Name: tw
Age: 20
缺省参数
调用函数时,缺省参数的值如果没有传入,则被认为是默认值。下例会打印默认的age,如果age没有被传入:
# coding: UTF-8
def printinfo( name, age = 35 ):
print "Name: ", name
print "Age ", age
return
printinfo( age=50, name="tw" )
printinfo( name="tw" )
Name: tw
Age 50
Name: tw
Age 35
不定长参数
你可能需要一个函数能处理比当初声明时更多的参数。这些参数叫做不定长参数。基本语法如下:
def functionname([formal_args,] *var_args_tuple ):
function_suite
return [expression]
加了星号(*)的变量名会存放所有未命名的变量参数。如下实例:
# coding: UTF-8
def printinfo( arg1, *vartuple ):
print "输出: "
print arg1
for var in vartuple:
print var
return
printinfo( 20 )
printinfo(7,6,5)
输出结果:
输出:
20
输出:
7
6
5