需要注意的有兩點:
1.當預設引數結合不定長位置引數一起使用的時候,需要把預設引數放到不定長位置引數(*args)的後面
2.當不定長關鍵字引數結合其它引數一起使用的時候,那麼不定長關鍵字引數(**kwargs)需要放到所有引數的最後面
當預設引數結合不定長位置引數一起使用的時候,需要把預設引數放到不定長位置引數(*args)的後面
# 當預設引數結合不定長位置引數一起使用的時候,需要把預設引數放到不定長位置引數(*args)的後面
def show_info(name, *args, age=18):
print("name:", name, "age:", age, "args:", args)
# show_info("李四", 20, 1, 3, 4)
show_info("李四", 1, 3, 4)
show_info("李四", 1, 3, 4, age=20)
#name: 李四 age: 18 args: (1, 3, 4)
#name: 李四 age: 20 args: (1, 3, 4)
當不定長關鍵字引數結合其它引數一起使用的時候,那麼不定長關鍵字引數(**kwargs)需要放到所有引數的最後面
# 當不定長關鍵字引數結合其它引數一起使用的時候,那麼不定長關鍵字引數(**kwargs)需要放到所有引數的最後面
def show_info(name, *args, age=18, **kwargs):
print("name:", name, "age:", age, "args:", args, "kwargs:", kwargs)
#show_info("李四", 1, 3, 5, age=20, a=5, b=6)
注點意:當使用關鍵字進行傳參的時候,先判斷有沒有對應的形參,如果有把資料給形參,否則給**kwargs引數 預設引數,不定長引數小結
def add info name,男 print name name,add info 吳彥祖 add info 李冰冰 女 add info 周杰倫 奶爸 預設引數,傳參的時候可以傳入,也可以不傳入,有預設值。def add info name,男 age 18 print name name,...
函式之不定長引數和預設引數
在定義函式的時候 某個形參有自己的預設值 初始值 在定義函式的時候 如果某個形參是預設引數 那麼後面的形參都應該為預設引數 如果乙個形參為預設引數 那麼在呼叫函式的時候 可以不傳實參那麼缺省會使用形參的初始值 預設值 如果在預設引數的位置傳遞了乙個實參 那麼實參的值 會覆蓋預設引數的值 def my...
不定長引數
不定長引數 在定義函式時,不確定接收引數的個數,此時可以使用不定長引數 不定長引數的表現形式 1.args 表示在呼叫函式時,專門來負責接收不確定個數的位置引數的。2.kwargs 表示在呼叫函式時,專門來負責接收不確定個數的關鍵字引數的。當呼叫函式時,會把所有的關鍵字引數打包到乙個字典裡面,然後把...