Python中 args 和 kwargs的用法

2021-09-22 06:17:42 字數 1973 閱讀 2018

from:

好久沒有學習python了,應為工作的需要,再次拾起python,喚起記憶。

當函式的引數不確定時,可以使用*args 和**kwargs,*args 沒有key值,**kwargs有key值。

還是直接來**吧,廢話少說

[python]view plain

copy

print?

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  

result:

[python]view plain

copy

print?

arg: 1  

another arg: two  

another arg: 3  

**kwargs:

[python]view plain

copy

print?

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  

result:

[python]view plain

copy

print?

arg: 1  

another keyword arg: myarg2: two  

another keyword arg: myarg3: 3  

也可以用下面的形式:

[python]view plain

copy

print?

def fun_var_args_call(arg1, arg2, arg3):  

print "arg1:", arg1  

print "arg2:", arg2  

print "arg3:", arg3  

args = ["two", 3] #list  

fun_var_args_call(1, *args)  

result:

[python]view plain

copy

print?

arg1: 1  

arg2: two  

arg3: 3  

[python]view plain

copy

print?

def fun_var_args_call(arg1, arg2, arg3):  

print "arg1:", arg1  

print "arg2:", arg2  

print "arg3:", arg3  

kwargs =  # dictionary  

fun_var_args_call(1, **kwargs)  

result:

[python]view plain

copy

print?

arg1: 1  

arg2:"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...