1. 程式人生 > >7、Python_函式引數,可變引數與關鍵字引數

7、Python_函式引數,可變引數與關鍵字引數

1、可變引數:

定義-》

def fun(name,sex,*c)

    pass

呼叫-》fun(jack,male,16,helloworld)

可以傳多個引數

 

把list或tuple傳入:

list=['jackpeng','roseli']

fun(jack,male,16,*list)

 

2、關鍵字引數:

定義-》

def fun(name,sex,**c)

    pass

呼叫-》fun(jack,male,age=16,height=172)

可以傳多個引數

 

3、命名關鍵字引數:

 

定義-》

def fun(name,sex,*,city,job)

    pass

呼叫-》fun(jack,male,city='shanghai',job='farmer')

可以傳多個引數,但*號後邊的兩個必傳

如果函式定義中已經有了一個可變引數,後面跟著的命名關鍵字引數就不再需要一個特殊分隔符*了:

 

def fun(name,sex,*family ,city,job)

呼叫-》fun(jack,male,'mom',city='shanghai',job='farmer'

)

後邊的兩個必傳

 

命名關鍵字引數必須傳入引數名,這和位置引數不同。如果沒有傳入引數名,呼叫將報錯

 

4、引數組合:

在Python中定義函式,可以用必選引數、預設引數、可變引數、關鍵字引數和命名關鍵字引數,這5種引數都可以組合使用。但是請注意,引數定義的順序必須是:必選引數、預設引數、可變引數、命名關鍵字引數和關鍵字引數。

優先順序:必選引數《《《預設引數《《《可變引數《《《命名關鍵字引數 or 關鍵字引數