Python 關鍵字參數

關鍵字參數

如果你有一些具有許多參數的函數,而你又希望只對其中的一些進行指定,那麼你可以通過命名它們來給這些參數賦值——這就是關鍵字參數(Keyword Arguments)——我們使用命名(關鍵字)而非位置(一直以來我們所使用的方式)來指定函數中的參數。
Python中這樣做有兩大優點——其一,我們不再需要考慮參數的順序,函數的使用將更加容易。其二,我們可以只對那些我們希望賦予的參數以賦值,只要其它的參數都具有默認參數值。

案例(保存爲 function_keyword.py):

def func(a, b=5, c=10):

print('a is', a, 'and b is', b, 'and c is', c)

func(3, 7)
func(25, c=24)
func(c=50, a=100)

輸出:

$ python function_keyword.py
a is 3 and b is 7 and c is 10
a is 25 and b is 5 and c is 24
a is 100 and b is 5 and c is 50

它是如何工作的
名爲 func 的函數有一個沒有默認參數值的參數,後跟兩個各自帶有默認參數值的參數。
在第一次調用函數時,func(3, 7),參數 a 獲得了值 3,參數 b 獲得了值 7,而 c 獲得了默認參數值 10。
在第二次調用函數時,func(25, c=24),由於其所處的位置,變量 a 首先獲得了值 25。然後,由於命名——即關鍵字參數——指定,變量 c 獲得了值 24。變量 b 獲得默認參數值 5。+

在第三次調用函數時,func(c=50, a=100),我們全部使用關鍵字參數來指定值。在這裏要注意到,儘管 a 在 c 之前定義,但我們還是在變量 a 之前指定了變量 c。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章