python 可變引數

2021-08-19 14:49:51 字數 1152 閱讀 3402

- 1.*args可以使用陣列和元組

- 2.**kwargs可以使用字典作為引數

def

t_args

(p, *args):

""" 把陣列、元組作為引數傳遞給*args

:param p:

:param args:

:return:

"""print p

for a in args:

print a

deft_kw

(p, **kwargs):

""" 把字典作為可變引數

:param p:

:param kwargs:

:return:

"""print p

for k in kwargs:

print k, '=', kwargs[k]

deft_args_kw

(p, *args, **kwargs):

""" 既有 *args、又有 **kwargs 的引數

:param p:

:param args:

:param kwargs:

:return:

"""print p

for a in args:

print a

for k in kwargs:

print k, '=', kwargs[k]

if __name__ == '__main__':

# 測試陣列

args = [1, 2, 3]

# 測試元組

args1 = ('a', 'b', 'c')

# 測試字典

d =

t_args('b', *args)

print

'***************==='

t_args('c', *args1)

print

'***************==='

t_kw('d', **d)

t_kw('name', a=1, b=2, c=3)

print

'***************==='

t_args_kw('e', *args, **d)

Python可變引數

在python函式中,還可以定義可變引數。顧名思義,可變引數就是傳入的引數個數是可變的,可以是1個 2個到任意個,還可以是0個。以數學題為例子,給定一組數字a,b,c 請計算a2 b2 c2 要定義出這個函式,我們必須確定輸入的引數。由於引數個數不確定,我們首先想到可以把a,b,c 作為乙個list...

python的可變引數

剛學用python的時候,特別是看一些庫的原始碼時,經常會看到func args,kwargs 這樣的函式定義,這個 和 讓人有點費解。其實只要把函式引數定義搞清楚了,就不難理解了。先說說函式定義,我們都知道,下面的 定義了乙個函式funca def funca pass 顯然,函式funca沒有引...

Python可變長引數

可變長的引數元組必須在位置和預設引數之後,帶元組 或者非關鍵字可變長引數 的函式普遍的語法如下 def function name formal args,nkwargs function documentation string function body suite星號操作符之後的形參將作為元組...