Python函數(shù)關(guān)鍵字參數(shù)及用法詳解
目前為止,我們使用函數(shù)時(shí)所用的參數(shù)都是位置參數(shù),即傳入函數(shù)的實(shí)際參數(shù)必須與形式參數(shù)的數(shù)量和位置對(duì)應(yīng)。而本節(jié)將介紹的關(guān)鍵字參數(shù),則可以避免牢記參數(shù)位置的麻煩,令函數(shù)的調(diào)用和參數(shù)傳遞更加靈活方便。
關(guān)鍵字參數(shù)是指使用形式參數(shù)的名字來(lái)確定輸入的參數(shù)值。通過(guò)此方式指定函數(shù)實(shí)參時(shí),不再需要與形參的位置完全一致,只要將參數(shù)名寫(xiě)正確即可。
因此,Python 函數(shù)的參數(shù)名應(yīng)該具有更好的語(yǔ)義,這樣程序可以立刻明確傳入函數(shù)的每個(gè)參數(shù)的含義。
例如,在下面的程序中就使用到了關(guān)鍵字參數(shù)的形式給函數(shù)傳參:
def dis_str(str1,str2):
print("str1:",str1)
print("str2:",str2)
#位置參數(shù)
dis_str("http://jb51.nett/python/","http://jb51.net/shell/")
#關(guān)鍵字參數(shù)
dis_str("http://jb51.net/python/",str2="http://jb51.net/shell/")
dis_str(str2="http://jb51.net/python/",str1="http://jb51.net/shell/")
程序執(zhí)行結(jié)果為:
str1: http://jb51.net/python/
str2: http://jb51.net/shell/
str1: http://jb51.net/python/
str2: http://jb51.net/shell/
str1: http://jb51.net/shell/
str2: http://jb51.net/python/
可以看到,在調(diào)用有參函數(shù)時(shí),既可以根據(jù)位置參數(shù)來(lái)調(diào)用,也可以使用關(guān)鍵字參數(shù)(程序中第 8 行)來(lái)調(diào)用。在使用關(guān)鍵字參數(shù)調(diào)用時(shí),可以任意調(diào)換參數(shù)傳參的位置。
當(dāng)然,還可以像第 7 行代碼這樣,使用位置參數(shù)和關(guān)鍵字參數(shù)混合傳參的方式。但需要注意,混合傳參時(shí)關(guān)鍵字參數(shù)必須位于所有的位置參數(shù)之后。也就是說(shuō),如下代碼是錯(cuò)誤的:
# 位置參數(shù)必須放在關(guān)鍵字參數(shù)之前,下面代碼錯(cuò)誤 dis_str(str1="http://jb51.net/python/","http://jb51.net/shell/")
Python 解釋器會(huì)報(bào)如下錯(cuò)誤:
SyntaxError: positional argument follows keyword argument
到此這篇關(guān)于Python函數(shù)關(guān)鍵字參數(shù)及用法詳解的文章就介紹到這了,更多相關(guān)Python函數(shù)關(guān)鍵字參數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Django Admin后臺(tái)模型列表頁(yè)面如何添加自定義操作按鈕
這篇文章主要介紹了Django Admin后臺(tái)模型列表頁(yè)面如何添加自定義操作按鈕,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-11-11
import?paddle報(bào)錯(cuò)的成功解決方法
最近安裝paddle的時(shí)候遇到了些問(wèn)題,這里給大家總結(jié)下,下面這篇文章主要給大家介紹了關(guān)于import?paddle報(bào)錯(cuò)的成功解決方法,需要的朋友可以參考下2023-06-06
Python3.6 Schedule模塊定時(shí)任務(wù)(實(shí)例講解)
下面小編就為大家?guī)?lái)一篇Python3.6 Schedule模塊定時(shí)任務(wù)(實(shí)例講解)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-11-11
Pytorch中關(guān)于BatchNorm2d的參數(shù)解釋
這篇文章主要介紹了Pytorch中關(guān)于BatchNorm2d的參數(shù)解釋,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-12-12

