*args
和 **kwargs
主要用於函數定義,你可以將不定數量的參數傳遞給某個函數。
*args
*args 不定參數(不定的意思是指,預先並不知道,函數使用者會傳遞多少個參數給你)
*args是用來發送一個非鍵值對的可變數量的參數列表給一個函數。
*args的用法:當傳入的參數個數未知,且不需要知道參數名稱時。
代碼如下:
def func_arg(farg, *args):
print("formal arg:", farg)
for arg in args:
print("another arg:", arg)
func_arg(1,"youzan",'dba','hello')
# 輸出結果如下:
# formal arg: 1
# another arg: youzan
# another arg: dba
# another arg: hello
**kwargs
**kwargs 傳入鍵值對(例如:num1=11,num2=22)
**kwargs 允許將不定長度的鍵值對作為參數傳遞給一個函數。如果想要在一個函數里處理帶名字的參數,應該使用 **kwargs。
代碼如下:
#利用它轉換參數為字典
def kw_dict(**kwargs):
return kwargs
print(kw_dict(a=1,b=2,c=3))
# 輸出結果如下:
# {'a': 1, 'b': 2, 'c': 3}