Python中 args和 kwargs的區別

2022-06-23 22:33:14 字數 2805 閱讀 2819

中秋的夜,微涼,但卻始終看不見月亮。

我想,它一定是害羞了,悄悄的躲到了烏雲的後面。

嗯,就是這樣,我真是太tm機智了。

正文:注:《python核心程式設計第2版》的11.6可變長度的引數---章節中有詳細介紹。

一、*args的使用方法

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

例子一:

def function(*args):

print(args, type(args))

function(1)

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

例子二:

def function(x, y, *args):

print(x, y, args)

function(1, 2, 3, 4, 5)

輸出結果:

二、**kwargs的使用方法

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

例子一:

def function(**kwargs):

print( kwargs, type(kwargs))

function(a=2)

輸出結果以列表形式展示:

例子二:

def function(**kwargs):

print(kwargs)

function(a=1, b=2, c=3)

輸出結果:

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

def function(arg,*args,**kwargs):

print(arg,args,kwargs)

function(6,7,8,9,a=1, b=2, c=3)

輸出結果:

哎呀,寫完了。

中秋節,多想,多想提一壺酒  約幾個老朋友  駕一葉小船兒,

迷失在故鄉江南水鄉裡。小舟蕩清波,過萬水千山。

中秋的夜,微涼,但卻始終看不見月亮。

我想,它一定是害羞了,悄悄的躲到了烏雲的後面。

嗯,就是這樣,我真是太tm機智了。

正文:注:《python核心程式設計第2版》的11.6可變長度的引數---章節中有詳細介紹。

一、*args的使用方法

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

例子一:

def function(*args):

print(args, type(args))

function(1)

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

例子二:

def function(x, y, *args):

print(x, y, args)

function(1, 2, 3, 4, 5)

輸出結果:

二、**kwargs的使用方法

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

例子一:

def function(**kwargs):

print( kwargs, type(kwargs))

function(a=2)

輸出結果以列表形式展示:

例子二:

def function(**kwargs):

print(kwargs)

function(a=1, b=2, c=3)

輸出結果:

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

def function(arg,*args,**kwargs):

print(arg,args,kwargs)

function(6,7,8,9,a=1, b=2, c=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...