从C#到Python:3 函数及函数编程
2010-09-30 22:42:07 来源:WEB开发网可以用如下几种方式调用:
1 parrot(1000) # 缺省值
2 parrot(action = 'VOOOOOM', voltage = 1000000) # 关键字,缺省值,次序可变
3 parrot('a thousand', state = 'pushing up the daisies')# 位置参数,缺省值,关键字
4 parrot('a million', 'bereft of life', 'jump') # 位置参数,缺省值
但以下几种调用方式是错误的:
1 parrot() # 非缺省的参数没有提供
2 parrot(voltage=5.0, 'dead') # 关键字参数后面又出现了非关键字参数
3 parrot(110, voltage=220) # 参数值重复提供
4 parrot(actor='John Cleese') # 未知关键字
3.2.3 字典参数
如果形参表中有一个形为**name的形参,在调用时这个形参可以接收一个字典,字典中包含所有不与任何形参匹配的关键字参数。例如下面的函数:
1 def cheeseshop(**keywords):
2 for kw in keywords.keys(): print kw, ':', keywords[kw]
就可以象下面这样调用:
1 cheeseshop(client='John Cleese',
2 shopkeeper='Michael Palin',
3 sketch='Cheese Shop Sketch')
结果显示:
client : John Cleese
shopkeeper : Michael Palin
sketch : Cheese Shop Sketch
3.2.4 函数参数调用的顺序
调用Python函数时,参数书写的顺序分别为:非关键字参数,关键字参数,元组参数,字典参数。请记住以下几点规则:
* 通过位置分配非关键字参数
更多精彩
赞助商链接