*與**除了可以動(dòng)態(tài)的定義函數(shù)的參數(shù),在下面例子使用起來也很方便
def testFunc(param1,param2):
print(param1)
print(param2)
if __name__ == '__main__':
param_dict = {'param2':'我是第二個(gè)參數(shù)','param1':'我是第一個(gè)參數(shù)'}
testFunc(**param_dict)
print('---------------------------------------')
testFunc(param1=param_dict['param1'],param2=param_dict['param2'])
print('////////////////////////////////////////')
param_list = ["我是第一個(gè)參數(shù)","我是第二個(gè)參數(shù)"]
testFunc(*param_list)
print('---------------------------------------')
testFunc(param1=param_list[0], param2=param_list[1])
結(jié)果
我是第一個(gè)參數(shù)
我是第二個(gè)參數(shù)
---------------------------------------
我是第一個(gè)參數(shù)
我是第二個(gè)參數(shù)
////////////////////////////////////////
我是第一個(gè)參數(shù)
我是第二個(gè)參數(shù)
---------------------------------------
我是第一個(gè)參數(shù)
我是第二個(gè)參數(shù)
當(dāng)函數(shù)參數(shù)是定長(zhǎng)的時(shí)候,可以通過,或者*完成參數(shù)的引用.比較方便.