當函數遇到不肯定數量參數腫麼破?*args和**kwargs前來報道!函數
當函數的參數不肯定時,可使用*args 和**kwargs,*args 沒有key值,**kwargs有key值。
>>>def fun_var_args(farg, *args):
>>> print "arg:", farg
>>> for value in args:
>>> print "another arg:", value
>>>fun_var_args(1, "two", 3) # *args能夠看成可容納多個變量組成的list io
result:
arg: 1
another arg: two
another arg: 3 變量
**kwargs:
>>>def fun_var_kwargs(farg, **kwargs):
>>> print "arg:", farg
>>> for key in kwargs:
>>> print "another keyword arg: %s: %s" % (key, kwargs[key])
>>>fun_var_kwargs(farg=1, myarg2="two", myarg3=3) # myarg2和myarg3被視爲key, 感受**kwargs能夠看成容納多個key和value的dictionary word
result:
arg: 1
another keyword arg: myarg2: two
another keyword arg: myarg3: 3 dict