python中 args和 kwargs的區別

2021-10-03 16:44:47 字數 1737 閱讀 8502

一、*args的使用方法

*args 用來將引數打包成tuple給函式體呼叫

例子一:

>>

>

deffunction

(*args):.

..print

(args,

type

(args)).

..>>

> function(1,

2,3,

4,5)

#輸出結果以元組的形式展示:((

1,2,

3,4,

5),<

type

'tuple'

>

)

例子二:
>>

>

deffunction

(x, y,

*args):.

..print

(x, y, args)..

.>>

> function(

"first"

,"double"

,"triple"

,"ultra"

,"rampage"

)# 輸出結果:

('first'

,'double',(

'triple'

,'ultra'

,'rampage'

))

二、**kwargs的使用方法

**kwargs 打包關鍵字引數成dict給函式體呼叫

例子一:

>>

>

deffunction

(**kwargs):.

..print

( kwargs,

type

(kwargs)).

..>>

> function(name=

"haha"

)#輸出結果以列表形式展示:(,

<

type

'dict'

>

)

例子二:
>>

>

deffunction

(**kwargs):.

..print

(kwargs)..

.>>

> function(name=

"haha"

,age=

18,desc=

"big guy"

)# 輸出結果:

注意點:引數arg、*args、**kwargs三個引數的位置必須是一定的。必須是(arg,*args,**kwargs)這個順序,否則程式會報錯。
>>

>

deffunction

(arg,

*args,

**kwargs):.

..print

(arg,args,kwargs)..

.>>

> function(1,

2,3,

4,5,name=

"haha"

,age=18)

#輸出結果:(1

,(2,

3,4,

5),)

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...