Python函式的各種引數用法(含星號引數)
Python中函式的引數有4種形式,分別是:
- 位置或關鍵字引數(Positional-or-keyword parameter)
- 僅位置的引數(Positional-only parameter)
- 任意數量的位置引數(var-positional parameter)
- 任意數量的關鍵字引數(var-keyword parameter)
第一種:位置或關鍵字引數
這種引數是Python中預設的引數型別,定義這種引數後,可以通過位置引數,或者關鍵字引數的形式傳遞引數:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
##
位置或者關鍵字引數
##
這個是Python的預設引數型別
##
示例:arg2提供了預設value
def
func(arg1, arg2 = "World!" ):
print
arg1, arg2
##
func可以通過位置引數形式呼叫
func( "Hello" , "MitchellChu" )
##
也可以通過關鍵字引數的形式來呼叫func
func(arg1 = "Hello" ,
arg2 = "World!" )
##
當然,混合的方式也是完全沒有問題的
func( "Hello" ,
arg2 = "World!" )
##
不過如果你不能將關鍵字引數優先於位置引數傳遞給函式(方法)
##
這個呼叫方法是不能接受的,因為優先順序不一樣.後面會說
func(arg1 = "Hello" , "World!" ) ##
ERROR
|
第二種方式:僅適用位置引數的形式
這種形式在需要將引數傳遞給函式(方法)時,僅能通過位置引數的傳遞方式。這種形式對於Python的開發者來說,暫時並沒有辦法使用。這種形式現在僅存在Python的很多內建的函式上:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
##
Positional-only parameter has no syntax to define
|