1、默认函数
def enroll(name, gender, age=6, city='Beijing'):
print 'name:', name
print 'gender:', gender
print 'age:', age
print 'city:', city
Python调用时候也可以不按顺序提供部分默认参数。当不按顺序提供部分默认参数时,需要把参数名写上。比如调用
enroll('Adam', 'M', city='Tianjin')
,意思是,
city
参数用传进去的值,其他默认参数继续使用默认值。
定义默认参数要牢记一点:默认参数必须指向不变对象!
要修改上面的例子,我们可以用None
这个不变对象来实现:
def add_end(L=None):
if L is None:
L = []
L.append('END')
return L
2、可变参数:
Person(name,age,*arg)
3、关键参数
Func(**kw)
调用Func(city="bj"),key必须是一个可变参数