python學習之參數傳遞
阿新 • • 發佈:2018-07-17
pytho python 必須 python學習 鍵值對 鍵值 字典元素 none class
^參數傳遞分為定義(形參)和調用(實參)兩種情況。^
1. 定義(形參)
- 默認參數
def func(x, y=None):
# 任何時候必須 優先定義 位置參數
# 默認參數和可變參數*args 順序無要求
# 任何時候必須 最後定義 可變參數**kwargs
- 可變參數之tuple
def func(a, x=None, *y): # x為默認參數; # y為元組,可以為空,可以有1到多個元素,函數將依次讀取y的元素,然後再函數裏組成一個元組。 func(1) # 1, None, () func(1,()) # 1, (), () func(1,2,3,8) # 1, 2, (3,8)
- 可變參數之dict
def func(x, y=0, **z):
# x為位置參數
# y為字典,可以為空,可以有1到多個字典元素,函數依次讀取每個鍵值對,並傳入在函數裏組成一個字典。
func(1) # 1, 0, {}
func(1, y=2, w=3) # 1, 0, {‘y‘: 2, ‘w‘: 3}
2. 調用(實參)
def func(a,b,c):
tuple = (1, 2, 3)
func(*tuple) # 1,2,3
# *tuple 將tuple拆分為三個元素,一次傳遞給函數的位置參數a,b,c
def func(a,b,c): dict = {‘a‘: 1, ‘b‘: 2, ‘c‘: 3} func(**dict) # 1,2,3 # **dict將dict每個值按照鍵值對的關系傳遞給函數的對應參數 # 因此key必須和位置參數(默認參數可省略)一一對應,不多不少才能成功
python學習之參數傳遞