python中*args **kwargs
阿新 • • 發佈:2019-03-21
可變 code 中秋節 由於 ref 方法 函數 inf pytho
(註:本文部分內容摘自互聯網,由於作者水平有限,不足之處,還望留言指正。)
中秋的夜,微涼,但卻始終看不見月亮。
我想,它一定是害羞了,悄悄的躲到了烏雲的後面。
嗯,就是這樣,我真是太TM機智了。
正文:
註:《python核心編程第2版》的11.6可變長度的參數---章節中有詳細介紹。
一、*args的使用方法
*args 用來將參數打包成tuple給函數體調用
例子一:
def function(*args): print(args, type(args)) function(1)
輸出結果以元組的形式展示:
例子二:
def function(x, y, *args): print(x, y, args) function(1, 2, 3, 4, 5)
輸出結果:
二、**kwargs的使用方法
**kwargs 打包關鍵字參數成dict給函數體調用
例子一:
def function(**kwargs): print( kwargs, type(kwargs)) function(a=2)
輸出結果以列表形式展示:
例子二:
def function(**kwargs): print(kwargs) function(a=1, b=2, c=3)
輸出結果:
註意點:參數arg、*args、**kwargs三個參數的位置必須是一定的。必須是(arg,*args,**kwargs)這個順序,否則程序會報錯。
def function(arg,*args,**kwargs): print(arg,args,kwargs) function(6,7,8,9,a=1, b=2, c=3)
輸出結果:
哎呀,寫完了。
中秋節,多想,多想提一壺酒 約幾個老朋友 駕一葉小船兒,
迷失在故鄉江南水鄉裏。小舟蕩清波,過萬水千山。
python中*args **kwargs