打星號可以引入不定數量的參數:
- 一個星號會以 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}
使用 一個星號的版本,滿方便的。