定義函數的時候,還可以有默認參數,默認參數的意思是當這個參數沒有傳遞的時候,參數就使用定義時的默認值。
例如Python自帶的 int() 函數,其實就有兩個參數,我們既可以傳一個參數,又可以傳兩個參數:
int('123') # ==> 123 int('123', 8) # ==> 83
int()函數的第二個參數是轉換進制base,如果不傳,默認是十進制 (base=10),如果傳了,就用傳入的參數。
可見,函數的默認參數的作用是簡化調用,你只需要把必須的參數傳進去。但是在需要的時候,又可以傳入額外的參數來覆蓋默認參數值。
我們來定義一個計算 x 的N次方的函數:
def power(x, n): s = 1 while n > 0: n = n - 1 s = s * x return s
假設計算平方的次數最多,我們就可以把 n 的默認值設定為 2:
def power(x, n=2): s = 1 while n > 0: n = n - 1 s = s * x return s
這樣一來,計算平方就不需要傳入兩個參數了:
power(5) # ==> 25
另外需要注意的是,由于函數的參數按從左到右的順序匹配,所以默認參數只能定義在必需參數的后面,否則將會出現錯誤。
# 錯誤的定義 def power(n=2, x): s = 1 while n > 0: n = n - 1 s = s * x return s
請定義一個 greet() 函數,它包含一個默認參數,如果沒有傳入參數,打印 Hello, world.
,如果傳入參數,打印Hello, 傳入的參數內容.
參考答案:
def greet(name='world'): print ('Hello, ' + name + '.') greet() greet('Alice')
請驗證,完成請求
由于請求次數過多,請先驗證,完成再次請求
打開微信掃碼自動綁定
綁定后可得到
使用 Ctrl+D 可將課程添加到書簽
舉報