概述
Python3中函數(shù)參數(shù)一般都是通過(guò)賦值進(jìn)行傳遞的,而調(diào)用者只需要知道如何正確的傳遞參數(shù)即可直接使用函數(shù),
位置參數(shù)
即我們使用最頻繁的參數(shù)傳遞方法,通過(guò)參數(shù)的默認(rèn)位置從左到右進(jìn)行匹配
def
f
(
x
,
y
,
z
)
:
print
(
x
,
y
,
z
)
f
(
1
,
2
,
3
)
示例結(jié)果:
1 2 3
關(guān)鍵詞參數(shù)
我們可以通過(guò)函數(shù)參數(shù)關(guān)鍵字進(jìn)行參數(shù)傳遞,此時(shí)參數(shù)的傳遞是通過(guò)變量名匹配,而不是位置的方式匹配,所以在我們?cè)谑褂没旌系幕谖恢玫膮?shù)和基于關(guān)鍵字的參數(shù)傳遞的原則就是,先基于位置的參數(shù)從左到右進(jìn)行匹配,然后在基于變量名進(jìn)行關(guān)鍵字的匹配。
def
f
(
x
,
y
,
z
)
:
print
(
x
,
y
,
z
)
# 關(guān)鍵字匹配
f
(
x
=
1
,
y
=
2
,
z
=
3
)
# 無(wú)需位置的匹配
f
(
y
=
2
,
z
=
3
,
x
=
1
)
# 位置與關(guān)鍵字的混合匹配
f
(
1
,
z
=
3
,
y
=
2
)
示例結(jié)果:
1 2 3
1 2 3
1 2 3
默認(rèn)參數(shù)
當(dāng)我們?cè)趥鬟f參數(shù)時(shí),有些參數(shù)總是默認(rèn)的時(shí)候,即如果沒(méi)有傳入值的話,在函數(shù)運(yùn)行之前,這些參數(shù)就被賦予了默認(rèn)值,這也是我們?cè)诤瘮?shù)定義時(shí)經(jīng)常使用參數(shù)定義方式
def
f
(
x
,
y
=
2
,
z
=
3
)
:
print
(
x
,
y
,
z
)
# 僅傳遞非默認(rèn)參數(shù)
f
(
1
)
# 同樣可以進(jìn)行位置參數(shù)的傳遞
f
(
1
,
2
,
3
)
# 傳遞關(guān)鍵字參數(shù)
f
(
1
,
y
=
4
,
z
=
5
)
示例結(jié)果:
1 2 3
1 2 3
1 4 5
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
