Python基礎 --函式的引數
阿新 • • 發佈:2018-12-20
定義函式的時候,我們把引數的名字和位置確定下來,函式的介面定義就完成了。對於函式的呼叫者來說,只需要知道如何傳遞正確的引數,以及函式將返回什麼樣的值就夠了,函式內部的複雜邏輯被封裝起來,呼叫者無需瞭解。
Python的函式定義非常簡單,但靈活度卻非常大。除了正常定義的必選引數外,還可以使用預設引數、可變引數和關鍵字引數,使得函式定義出來的介面,不但能處理複雜的引數,還可以簡化呼叫者的程式碼。
一. 位置引數;
1 def power(x, n): 2 s = 1 3 while n > 0: 4 n = n - 1 5 s = s * x6 return s 7 8 9 >>> power(5, 2) 10 25 11 >>> power(5, 3) 12 125
power(x, n)
函式有兩個引數:x
和n
,這兩個引數都是位置引數,呼叫函式時,傳入的兩個值按照位置順序依次賦給引數x
和n
。
二. 預設引數:
1 #建立函式 2 def power(x, n=2): 3 s = 1 4 while n > 0: 5 n = n - 1 6 s = s * x 7 returns 8 9 #呼叫 10 >>> power(5) 11 25 12 >>> power(5, 2) 13 25
設定預設引數時,有幾點要注意:
一是必選引數在前,預設引數在後,否則Python的直譯器會報錯(思考一下為什麼預設引數不能放在必選引數前面);
二是如何設定預設引數。
當函式有多個引數時,把變化大的引數放前面,變化小的引數放後面。變化小的引數就可以作為預設引數。