以下幾種函式定義
def funcion(a,b):
print a,b
function(1,2)
def function1(*a):
print a <=列印元組
function1(1,2,3)
def function2(**a):
print a <=列印字典
function2(name='zzj',age=30)
def function3(*a,**b):
print a,b <=列印元組+字典
function3(1,2,3,name='zzj',age=30)
呼叫,需要人為的構造實參.如果我們有現成的元組和字典,想作為實參應該怎麼辦?
如我們經過一系列的動作得知了乙個元組atuple,想將其作為實參,
難道function1(atuple)?
code
>>> atuple=(1,2,3,4)
>>> function1(atuple)
((1, 2, 3),)
(1, 2, 3, 4)
code
>>> adict
>>> function2(name='zzj',age=30)
>>> function2(adict)
traceback (most recent call last):
file "", line 1, in
typeerror: function2() takes exactly 0 arguments (1 given)
code
>>> def function4(a,b,c,*d,**e):
... print a,b,c,d,e
>>> arg1=1
>>> arg2=2
>>> arg3=3
>>> atuple=(4,5,6)
>>> adict=
1 2 3 ((4, 5, 6),)
注意,實參與形參的順序,一定要對應上,否則就不是你想要的值了.
掃碼關注
談python函式的引數處理
以下幾種函式定義 def funcion a,b print a,b function 1,2 def function1 a print a 列印元組 function1 1,2,3 def function2 a print a 列印字典 function2 name zzj age 30 de...
小談Python的getattr函式
通過 getattr 獲取物件引用 你已經知道 python 函式是物件。你不知道的是,使用 getattr 函式,可以得到乙個直到執行時才知道名稱的函式的引用。li larry curly li.pop getattr li,pop li larry curly moe getattr clear...
python樹函式 從表示式樹建立python函式
我假設你的表示式樹是由許多物件組成的,它們的型別對應於它是什麼樣的表示式。例如,or,equals,strings等,類似於 class orexpression def init self,left,right self.left left self.right right class equal...