def insert(a,L=[]):
L.append(a)
print L
insert('hello')
insert('world')
其运行结果为:
二.任意个数参数
一般情况下我们在定义函数时,函数参数的个数是确定了的,然而某些情况下我们是不能确定参数的个数的,比如要存储某个人的名字和它的小名,某些人小名可能有2个或者更多个,此时无法确定参数的个数,就可以使用收集参数了,使用收集参数只需在参数前面加上'*'或者'**'。
def storename(name,*nickName):
print 'real name is %s' %name
for nickname in nickName:
print nickname
storename('jack')
storename(u'詹姆斯',u'小皇帝')
storename(u'奥尼尔',u'大鲨鱼',u'三不沾')
'*'和'**'表示能够接受0到任意多个参数,'*'表示将没有匹配的值都放在同一个元组中,'**'表示将没有匹配的值都放在一个dictionary中。
def printvalue(a,**d):
print 'a=%d' %a
for x in d:
print x+'=%d' %d[x]
printvalue(1,b=2,c=3)
最后需要补充一点:Python中函数是可以返回多个值的,如果返回多个值,会将多个值放在一个元组或者其他类型的集合中来返回。