- 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星號操作符之後的形參將作為元組...