參數
一、實際參數和形式參數
形式參數:在定義函數時,函數后面括號中的參數。
實際參數:調用函數時,括號里提供給函數的參數。
二、位置參數
在調用函數時,提供給函數的實際參數的數量和位置必須與定義時完全一致。
三、關鍵字參數
使用形式參數的名字來指定提供的實際參數值,這樣實際參數的位置就不需要與形式參數一致了。
例如:
def calc(a,b,c)
使用位置參數:s=calc(1,2,3)
而使用關鍵字參數:s=calc(c=3,a=1,b=2)
四、默認參數
如果調用函數時,少了一個參數,則使用定義函數時提供的默認實際參數。
例如:
def calc(a,b,c=3)
#少提供了一個實際參數c的值3
s=calc(1,2)
#其效果與s=calc(1,2,3)相同
五、可變參數
也稱為不定長參數,即傳入函數的實際參數可以是零個、一個、兩個或任意個。主要有兩種形式:一種是*parameter,別一種是**parameter。
1、*parameter
接收任意多個實際參數,并將其放到一個元組中。
def printcoffee(*coffeename):
print('\n我喜歡的咖啡有:')
for item in coffeename:
print(item)
#分別調用以上函數三次:
# printcoffee('藍山')
# printcoffee('藍山','卡布奇諾')
# printcoffee('藍山','卡布奇諾','摩卡')
#打印結果省略
當然,如果已經有一個列表存在了:mycoffee=['藍山','卡布奇諾','摩卡']
也可以將其作業實際參數,調用函數:
printcoffee(*mycoffee)
2、**parameter
接收任意多個類似關鍵字參數一樣顯示賦值的實際參數,并將其放到一個字典中。(參數是“鍵-值”的字典形式)
def printsign(**sign):
for key,value in sign.items():
print("[" + key + "]的星座是:" + value)
#調用函數
printsign(張三='摩羯座',李四='水瓶座')
printsign(張三='摩羯座',李四='水瓶座',王五='射手座')
浙公網安備 33010602011771號