python基礎 可變長引數

2021-10-18 02:41:42 字數 884 閱讀 6347

在很多情況下,我們對函式計算的邏輯需求是可以同時處理不定長的多個物件,例如:想定義乙個可以計算任意長度的物件相加,則需要使用可變長引數。python中使用乙個星號標註可變長引數,此時,傳入的多個引數將被封裝為乙個元組傳入函式內:

def sum_2(*num):               # 此時*num就是乙個可變長引數

r = 0

for i in num: # 但可變長引數名仍然是num而非*num

r += i

return(r)

sum_2(1, 2, 3)                 # 該引數位上可傳入多個引數,最後封裝為乙個元組傳入函式
輸出:6

對於同時帶有引數名和實際傳入物件的關鍵字引數,也可一次性傳入多個,即可變長關鍵字引數。與可變長引數不同,可變長關鍵字引數需要用兩個星號來進行說明,同時實際傳入過程是python會將其轉化為字典進行傳入:

def kw(**dic):

return(dic)

kw(a=1, b=2, c=3)
輸出:

可變長關鍵字引數常用於結構化輸出列印資訊的場景,例如統計學生資訊時,有一欄為興趣愛好,而學生興趣愛好可以是乙個或多個,此時就可食用可變長關鍵字引數,同時傳入引數名和對應的真實值:

def student(name, **interest):

print('name:', name, 'interest:', interest)

Python可變長引數

可變長的引數元組必須在位置和預設引數之後,帶元組 或者非關鍵字可變長引數 的函式普遍的語法如下 def function name formal args,nkwargs function documentation string function body suite星號操作符之後的形參將作為元組...

python可變長引數

程式設計函式時,偶爾會遇到引數數量不確定的時候,這時候就要使用可變引數.在python中,提供了兩種可變引數 在形參名前加乙個 表示接受任意多的引數 def func args print args func func 1 1,func 1,2 1,2 在形參名前加兩個 表示接受任意的關鍵引數 de...

python 可變長引數

引數組 args,kwargs 實參有按位置和按關鍵字兩種形式定義,args和 kwargs 位置引數 按照從左到右的順序定義的引數 位置形參 必選引數 位置實參 按照位置給形參傳值 關鍵字引數 按照key value的形式定義的實參 無需按照位置為形參傳值 注意的問題 1.關鍵字實參必須在位置實參...