Python不定長度參數*args,**kwargs

打星號可以引入不定數量的參數:

  • 一個星號會以 tuple 的方式引入
  • 兩個星號會以 dict 的方式引入

*args 跟 *kwargs 功能一樣,就是傳遞不定長度的參數。


範例1:

def test_kwargs(**kwargs):
    print('kwargs:',kwargs)

def test_args(*args):
    print('args:',args)
    print("args len:",len(args))
    idx=0
    for item in args:
    	idx+=1
    	print(idx,":",item)

test_args(1,2,3,'a','c','b')
test_kwargs(a=4,b=3,c=2)

輸出結果:

 args: (1, 2, 3, 'a', 'c', 'b')
 args len: 6
 1 : 1
 2 : 2
 3 : 3
 4 : a
 5 : c
 6 : b
 kwargs: {'a': 4, 'b': 3, 'c': 2}

使用 一個星號的版本,滿方便的。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *