不定長參數 | Python從入門到精通:高階篇之五
參數解包(拆包)
定義一個函數
def fn4(a,b,c):
print('a =',a)
print('b =',b)
print('c =',c)
fn4(1,2,3)
執行結果:

建立一個元組
t = (10,20,30)
此時我們想要把t中的元素傳進函數,應該怎麼做呢?
def fn4(a,b,c):
print('a =',a)
print('b =',b)
print('c =',c)
t = (10,20,30)
fn4(t)
此時可以發現,程式出錯了,我們不能這樣去chu傳遞,這樣隻傳遞了一個參數,我們可以做如下的修改:
fn4(t[0],t[1],t[2])
這樣我們就可以實作了,但是我們會發現,有點繁瑣,如果參數過多,步驟會一直重複,我們希望可以直接把元組的參數指派給形參。
fn4(*t)
傳遞實參時,也可以在序列類型的參數前添加星号,這樣他會自動将序列中的元素依次作為參數傳遞。但是需要注意的是,這裡要求序列中元素的個數必須和形參的個數的一緻,否則程式會出錯。
def fn4(a,b,c):
print('a =',a)
print('b =',b)
print('c =',c)
t = (10,20,30,40)
fn4(*t)
建立一個字典
将字典裡的項進行參數傳遞。通過
\*\*
來對一個字典進行解包操作
def fn4(a,b,c):
print('a =',a)
print('b =',b)
print('c =',c)
d = {'a':100,'b':200,'c':300}
fn4(**d)
以上就是我們對于參數的介紹,之後會通過練習來鞏固這部分内容。
配套視訊課程,點選這裡檢視
擷取更多資源請訂閱
Python學習站