當函式的引數不確定時,可以使用*args 和**kwargs,*args 沒有key值,**kwargs有key值。
還是直接來**吧,廢話少說
[python]view plain
copy
print?
deffun_var_args(farg, *args):
"arg:"
, farg
forvalue
inargs:
"another arg:"
, value
fun_var_args(1
, "two", 3
) # *args可以當作可容納多個變數組成的list
result:
[python]view plain
copy
print?
arg:
1another arg: two
another arg: 3
**kwargs:
[python]view plain
copy
print?
deffun_var_kwargs(farg, **kwargs):
"arg:"
, farg
forkey
inkwargs:
"another keyword arg: %s: %s"
% (key, kwargs[key])
fun_var_kwargs(farg=1
, myarg2=
"two"
, myarg3=3)
# myarg2和myarg3被視為key, 感覺**kwargs可以當作容納多個key和value的dictionary
result:
[python]view plain
copy
print?
arg:
1another keyword arg: myarg2: two
another keyword arg: myarg3: 3
也可以用下面的形式:
[python]view plain
copy
print?
deffun_var_args_call(arg1, arg2, arg3):
"arg1:"
, arg1
"arg2:"
, arg2
"arg3:"
, arg3
args = ["two", 3
] #list
fun_var_args_call(1
, *args)
result:
[python]view plain
copy
print?
arg1:
1arg2: two
arg3: 3
[python]view plain
copy
print?
deffun_var_args_call(arg1, arg2, arg3):
"arg1:"
, arg1
"arg2:"
, arg2
"arg3:"
, arg3
kwargs =
# dictionary
fun_var_args_call(1
, **kwargs)
result:
[python]view plain
copy
print?
arg1:
1arg2:"two"
arg3:3
python中args和kwargs引數的使用
在python中,規定了函式中的形參前帶 的,稱為可變位置引數,通常用 args表示。args表示乙個元組,傳入的引數值會被放到這個元組裡面,型別可以是任意的。同理,函式中形參前帶 的,成為可變關鍵字引數,通常用 kwargs表示。表示乙個字典,傳入的引數以鍵值對的形式存放在了字典裡面。下面我們來看...
Python中 args 和 kwargs的用法
好久沒有學習python了,應為工作的需要,再次拾起python,喚起記憶。當函式的引數不確定時,可以使用 args 和 kwargs,args 沒有key值,kwargs有key值。還是直接來 吧,廢話少說 python def fun var args farg,args print arg f...
Python中 args 和 kwargs的用法
當函式的引數不確定時,可以使用 args 和 kwargs,args 沒有key值,kwargs有key值。還是直接來 吧,廢話少說 python view plaincopyprint?def fun var args farg,args print arg farg for value in a...