1. 程式人生 > >day04 python *args和**kwargs

day04 python *args和**kwargs

總結 調用 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,其余的參數放在一個字典的形式給kwargs
def 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參數放在一個字典裏面傳給kwargs
def 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