python中是否有函數(shù)重載?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
成都創(chuàng)新互聯(lián)公司專業(yè)為企業(yè)提供偏關網(wǎng)站建設、偏關做網(wǎng)站、偏關網(wǎng)站設計、偏關網(wǎng)站制作等企業(yè)網(wǎng)站建設、網(wǎng)頁設計與制作、偏關企業(yè)網(wǎng)站模板建站服務,十載偏關做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡服務。
python 是動態(tài)腳本型語言,設計的機制就是按函數(shù)名來保存函數(shù)入口,而不是函數(shù)名+參數(shù)。
你調用函數(shù)的時候,可以多傳參數(shù),一樣的會調用到只是函數(shù)名匹配的那個函數(shù)。
python 雖然不支持函數(shù)重載,但是可以通過傳遞容器類型的參數(shù)(list、tuple、set、dict)來實現(xiàn)類似的功能。
為了考慮為什么 python 不提供函數(shù)重載,首先我們要研究為什么需要提供函數(shù)重載。
函數(shù)重載主要是為了解決兩個問題。
1、可變參數(shù)類型。
2、可變參數(shù)個數(shù)。
另外,一個基本的設計原則是,僅僅當兩個函數(shù)除了參數(shù)類型和參數(shù)個數(shù)不同以外,其功能是完全相同的,此時才使用函數(shù)重載,如果兩個函數(shù)的功能其實不同,那么不應當使用重載,而應當使用一個名字不同的函數(shù)。
好吧,那么對于情況 1 ,函數(shù)功能相同,但是參數(shù)類型不同,python 如何處理?答案是根本不需要處理,因為 python 可以接受任何類型的參數(shù),如果函數(shù)的功能相同,那么不同的參數(shù)類型在 python 中很可能是相同的代碼,沒有必要做成兩個不同函數(shù)。
那么對于情況 2 ,函數(shù)功能相同,但參數(shù)個數(shù)不同,python 如何處理?大家知道,答案就是缺省參數(shù)。對那些缺少的參數(shù)設定為缺省參數(shù)即可解決問題。因為你假設函數(shù)功能相同,那么那些缺少的參數(shù)終歸是需要用的。
好了,鑒于情況 1 跟 情況 2 都有了解決方案,python 自然就不需要函數(shù)重載了。
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。
當前題目:python中是否有函數(shù)重載
URL鏈接:http://aaarwkj.com/article36/jjhhpg.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供微信公眾號、服務器托管、網(wǎng)站營銷、企業(yè)建站、搜索引擎優(yōu)化、Google
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)