Python 函式引數相關

2021-09-28 11:57:11 字數 1322 閱讀 1681

python 函式引數相關

自己做的筆記,初學python,難免有錯誤。

在呼叫函式時,位置引數只能用在關鍵字引數之前。使用了關鍵字引數,之後的引數只能用關鍵字引數。關鍵字引數順序可以打亂。

def test(a, b, c):

pass

tes(5, b=10, c=15)

定義函式時,使用引數預設值,要放在形參列表的最後(雖然也可以放在一星引數的前面但是沒有意義)。如果形參列表有收集關鍵字引數,則收集關鍵字引數放在最後。

def test(x, y, z=10, **scores):

pass

def test(x, y, z=10,*book, **scores): # 這樣使用不會報錯,但沒有意義

pass #因為呼叫時,z還必須得傳入值。

1.一星引數可以放在形參列表任意位置。呼叫函式時,一星引數前面的引數必須用位置引數,後面的必須用關鍵字引數。

def test(a, *b, c):

print(a, b,c)

test(1,2,3,c=4) # 輸出結果 1 (2,3) 4

2.二星引數(收集關鍵字引數)必須放在形參列表的最後。

逆向收集,可以用列表、元組、字典的方式給函式傳入引數。列表、元組需要在變數前面加乙個星,字典加倆星。

1、列表、元組

def foo(a, *b, c):      # 上面說過, 因為c在*b收集引數之後

print(a, b, c) # 呼叫時必須用關鍵字引數傳入引數

my = (1, 2, 3)

foo(*my, c=4) # 輸出 1 (2, 3) 4

foo(1, *my, c=4) # 輸出 1 (1, 2, 3) 4

2、字典

def bar(book, price, desc):

pass

my_dict =

bar(**my_dict) #字典中指定引數的順序可以打亂

如果字典只指定了部分引數,剩餘的以字典指定的引數(下面例子中的book)為分界線,前面的可以用位置引數或關鍵字,後面的必須用關鍵字引數。

def bar(start, book, middle, price, desc, end):

pass

my_dict =

bar('開始', **my_dict,middle='中間', end='結束')

python引數函式 Python函式引數總結

coding utf 8 整理一下python函式的各種引數型別 位置引數 呼叫函式時,傳入的兩個值按照位置順序依次賦給引數 def power x,n s 1 while n 0 n n 1 s s x return s print power 5,2 預設引數 簡化函式的呼叫 def power...

python 引數 Python函式 引數

python中將函式作為引數,區分將引數直接寫成函式名和函式名 的區別。def fun1 fun print print print fun 執行fun1 fun4 時,fun為函式fun3的返回值x print type fun type fun type fun fun 執行fun1 fun4 ...

函式傳引數 python 函式引數

1.位置引數 最熟悉的一種引數形式,優點 簡單。缺點 傳遞引數不夠靈活 2.預設引數 優點 提高了 的復用性 缺點 容易產生二義性 注意事項 一是必選引數在前,預設引數在後。二是如何設定預設引數。當函式有多個引數時,把變化大的引數放前面,變化小的引數放後面。變化小的引數就可以作為預設引數。def p...