最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python函數(shù)默認(rèn)參數(shù)設(shè)置的具體方法

 更新時(shí)間:2023年03月31日 11:13:16   作者:小劉學(xué)安卓  
本文主要介紹了Python函數(shù)默認(rèn)參數(shù)設(shè)置,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

我們知道,在調(diào)用函數(shù)時(shí)如果不指定某個(gè)參數(shù),Python 解釋器會(huì)拋出異常。為了解決這個(gè)問題,Python 允許為參數(shù)設(shè)置默認(rèn)值,即在定義函數(shù)時(shí),直接給形式參數(shù)指定一個(gè)默認(rèn)值。這樣的話,即便調(diào)用函數(shù)時(shí)沒有給擁有默認(rèn)值的形參傳遞參數(shù),該參數(shù)可以直接使用定義函數(shù)時(shí)設(shè)置的默認(rèn)值。

Python 定義帶有默認(rèn)值參數(shù)的函數(shù),其語(yǔ)法格式如下:

def 函數(shù)名(...,形參名,形參名=默認(rèn)值):
    代碼塊

注意,在使用此格式定義函數(shù)時(shí),指定有默認(rèn)值的形式參數(shù)必須在所有沒默認(rèn)值參數(shù)的最后,否則會(huì)產(chǎn)生語(yǔ)法錯(cuò)誤。

下面程序演示了如何定義和調(diào)用有默認(rèn)參數(shù)的函數(shù):

#str1沒有默認(rèn)參數(shù),str2有默認(rèn)參數(shù)
def dis_str(str1,str2 = "http://jb51.net/python/"):
print("str1:",str1)
print("str2:",str2)
 
dis_str("http://jb51.net/shell/")
dis_str("http://jb51.net/java/","http://jb51.net/golang/")

運(yùn)行結(jié)果為:

str1: http://jb51.net/shell/
str2: http://jb51.net/python/
str1: http://jb51.net/java/
str2: http://jb51.net/golang/

上面程序中,dis_str() 函數(shù)有 2 個(gè)參數(shù),其中第 2 個(gè)設(shè)有默認(rèn)參數(shù)。這意味著,在調(diào)用 dis_str() 函數(shù)時(shí),我們可以僅傳入 1 個(gè)參數(shù),此時(shí)該參數(shù)會(huì)傳給 str1 參數(shù),而 str2 會(huì)使用默認(rèn)的參數(shù),如程序中第 6 行代碼所示。

當(dāng)然在調(diào)用 dis_str() 函數(shù)時(shí),也可以給所有的參數(shù)傳值(如第 7 行代碼所示),這時(shí)即便 str2 有默認(rèn)值,它也會(huì)優(yōu)先使用傳遞給它的新值。
同時(shí),結(jié)合關(guān)鍵字參數(shù),以下 3 種調(diào)用 dis_str() 函數(shù)的方式也是可以的:

dis_str(str1 = "http://jb51.net/shell/")
dis_str("http://jb51.net/java/",str2 = "http://jb51.net/golang/")
dis_str(str1 = "http://jb51.net/java/",str2 = "http://jb51.net/golang/")

再次強(qiáng)調(diào),當(dāng)定義一個(gè)有默認(rèn)值參數(shù)的函數(shù)時(shí),有默認(rèn)值的參數(shù)必須位于所有沒默認(rèn)值參數(shù)的后面。因此,下面例子中定義的函數(shù)是不正確的:

#語(yǔ)法錯(cuò)誤
def dis_str(str1="http://jb51.net/python/",str2,str3):
pass

顯然,str1 設(shè)有默認(rèn)值,而 str2 和 str3 沒有默認(rèn)值,因此 str1 必須位于 str2 和 str3 之后。

有讀者可能會(huì)問,對(duì)于自己自定義的函數(shù),可以輕易知道哪個(gè)參數(shù)有默認(rèn)值,但如果使用 Python 提供的內(nèi)置函數(shù),又或者其它第三方提供的函數(shù),怎么知道哪些參數(shù)有默認(rèn)值呢?

Pyhton 中,可以使用“函數(shù)名.__defaults__”查看函數(shù)的默認(rèn)值參數(shù)的當(dāng)前值,其返回值是一個(gè)元組。以本節(jié)中的 dis_str() 函數(shù)為例,在其基礎(chǔ)上,執(zhí)行如下代碼:

print(dis_str.__defaults__)

程序執(zhí)行結(jié)果為:

('http://jb51.net/python/',)

到此這篇關(guān)于Python函數(shù)默認(rèn)參數(shù)設(shè)置的具體方法的文章就介紹到這了,更多相關(guān)Python函數(shù)默認(rèn)參數(shù)設(shè)置內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python格式的Caffe圖片數(shù)據(jù)均值計(jì)算學(xué)習(xí)

    python格式的Caffe圖片數(shù)據(jù)均值計(jì)算學(xué)習(xí)

    這篇文章主要為大家介紹了python格式的Caffe圖片數(shù)據(jù)均值計(jì)算學(xué)習(xí)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • 基于本地知識(shí)的問答機(jī)器人langchain-ChatGLM 大語(yǔ)言模型實(shí)現(xiàn)方法詳解

    基于本地知識(shí)的問答機(jī)器人langchain-ChatGLM 大語(yǔ)言模型實(shí)現(xiàn)方法詳解

    這篇文章主要介紹了基于本地知識(shí)的問答機(jī)器人langchain-ChatGLM 大語(yǔ)言模型實(shí)現(xiàn)方法,結(jié)合具體實(shí)例形式詳細(xì)分析了langchain-ChatGLM的功能、原理、部署方法與操作注意事項(xiàng),需要的朋友可以參考下
    2023-07-07
  • 使用Python pip怎么升級(jí)pip

    使用Python pip怎么升級(jí)pip

    這篇文章主要介紹了使用Python pip怎么升級(jí)pip,本文給大家分享方法和實(shí)現(xiàn)步驟對(duì)python pip升級(jí)pip相關(guān)知識(shí)感興趣的朋友跟隨小編一起看看吧
    2020-08-08
  • python3讀取文件指定行的三種方法

    python3讀取文件指定行的三種方法

    考慮到深度學(xué)習(xí)領(lǐng)域中的數(shù)據(jù)規(guī)模一般都比較大,尤其是訓(xùn)練集,這個(gè)限制條件對(duì)應(yīng)到實(shí)際編程中就意味著,我們很有可能無法將整個(gè)數(shù)據(jù)文件的內(nèi)容全部都加載到內(nèi)存中。那么就需要一些特殊的處理方式,本文將要介紹的是從文件中只讀取特定行的內(nèi)容的3種解決方案。
    2021-05-05
  • 講解Python?中的?with?關(guān)鍵字

    講解Python?中的?with?關(guān)鍵字

    這篇文章主要介紹了講解Python?中的with關(guān)鍵字,文章基于python的相關(guān)資料展開?with?語(yǔ)句的一些基本概念和用法及其底層工作原理,下文更多內(nèi)容感興趣的小伙伴可以參考一下
    2022-05-05
  • python訓(xùn)練數(shù)據(jù)時(shí)打亂訓(xùn)練數(shù)據(jù)與標(biāo)簽的兩種方法小結(jié)

    python訓(xùn)練數(shù)據(jù)時(shí)打亂訓(xùn)練數(shù)據(jù)與標(biāo)簽的兩種方法小結(jié)

    今天小編就為大家分享一篇python訓(xùn)練數(shù)據(jù)時(shí)打亂訓(xùn)練數(shù)據(jù)與標(biāo)簽的兩種方法小結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-11-11
  • pygame實(shí)現(xiàn)五子棋游戲

    pygame實(shí)現(xiàn)五子棋游戲

    這篇文章主要為大家詳細(xì)介紹了pygame實(shí)現(xiàn)五子棋游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • Python字符串切片操作知識(shí)詳解

    Python字符串切片操作知識(shí)詳解

    這篇文章主要介紹了Python中字符串切片操作 的相關(guān)資料,需要的朋友可以參考下
    2016-03-03
  • Python的SQLAlchemy框架使用入門

    Python的SQLAlchemy框架使用入門

    這篇文章主要介紹了Python的SQLAlchemy框架使用入門,SQLAlchemy框架是Python中用來操作數(shù)據(jù)庫(kù)的ORM框架之一,需要的朋友可以參考下
    2015-04-04
  • 使用Python來開發(fā)Markdown腳本擴(kuò)展的實(shí)例分享

    使用Python來開發(fā)Markdown腳本擴(kuò)展的實(shí)例分享

    這篇文章主要介紹了使用Python來開發(fā)Markdown腳本擴(kuò)展的實(shí)例分享,文中的示例是用來簡(jiǎn)單地轉(zhuǎn)換文檔結(jié)構(gòu),主要為了體現(xiàn)一個(gè)思路,需要的朋友可以參考下
    2016-03-03

最新評(píng)論

阳原县| 华池县| 海原县| 莱阳市| 兴仁县| 红原县| 苍梧县| 余庆县| 衡南县| 隆昌县| 苍山县| 文水县| 大厂| 龙川县| 喀喇沁旗| 瑞金市| 民勤县| 股票| 上杭县| 东港市| 阿巴嘎旗| 金溪县| 迁西县| 鄂托克旗| 北川| 仙游县| 贵定县| 张北县| 中牟县| 嘉荫县| 嘉兴市| 宣恩县| 鹤壁市| 金沙县| 浑源县| 衡山县| 镇巴县| 康平县| 广昌县| 翁源县| 宜州市|