day04 python *args和**kwargs
阿新 • • 發佈:2018-01-21
總結 調用 kaa 組成 其余 int sha pos 元組
# arg1+*args 函數調用的時候,會把第一個參數給arg1,其余的參數以元組(tuple)都給args def function1(arg1,*args): print(‘arg1=‘, arg1) print(‘args=‘,args) function1(1,2,3) ‘‘‘ 上述調用結果是: arg1= 1 args= (2, 3) ‘‘‘ # arg1+**kaargs 函數調用的時候,參數必須使用 “arg1="shabi1",arg2="shabi2",arg3=‘shabi3‘”形式給出 #且第一個實參 必須是arg1=xxx ,函數會把第一個參數賦值給arg1,其余的參數放在一個字典的形式給kwargsdef function2(arg1,**kwargs): print(‘arg1=‘,arg1) print(‘kwargs=‘,kwargs) function2(arg1="shabi1",arg2="shabi2",arg3=‘shabi3‘) # ‘‘‘ 上述調用結果是: arg1= shabi1 kwargs= {‘arg2‘: ‘shabi2‘, ‘arg3‘: ‘shabi3‘} ‘‘‘ #*args,**kwargs,函數調用的時候,參數可以是任意數字,字符串,列表,字典,元組的組成,key=value的實參必須放在最後面 #函數會把所有的非 key=value的放在一個元組裏面傳給args,而把所有的key=value參數放在一個字典裏面傳給kwargsdef function3(*args,**kwargs): print(‘args=‘,args) print(‘kwargs=‘,kwargs) function3(1,2,[3,4],args="1",arg2="shabi2",arg3="shabi3") ‘‘‘ 上述調用結果是: args= (1, 2, [3, 4]) kwargs= {‘args‘: ‘1‘, ‘arg2‘: ‘shabi2‘, ‘arg3‘: ‘shabi3‘} ‘‘‘ ‘‘‘ 總結:當你不確定你會傳什麽參數的時候,第三種是最常用的 ‘‘‘
day04 python *args和**kwargs