新聞中心
在python中,具有重載的思想?yún)s沒(méi)有重載的概念。所以有的人說(shuō)python這么語(yǔ)言并不支持函數(shù)重載,有的人說(shuō)python具有重載功能。實(shí)際上python編程中具有重載的目的缺無(wú)重載的行為,或者說(shuō)是python并不需要重載!

創(chuàng)新互聯(lián)專注于企業(yè)成都全網(wǎng)營(yíng)銷、網(wǎng)站重做改版、都江堰網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5網(wǎng)站設(shè)計(jì)、商城網(wǎng)站制作、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)公司、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為都江堰等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。
python是一門動(dòng)態(tài)語(yǔ)言,不需要聲明變量類型,函數(shù)中可以接受任何類型的參數(shù)也就無(wú)法根據(jù)參數(shù)類型來(lái)支持重載,python沒(méi)有必要去考慮參數(shù)的類型問(wèn)題,這些都可以在函數(shù)內(nèi)部判斷處理,并無(wú)必要去在寫一個(gè)函數(shù)。python 有多種傳參方式,默認(rèn)參數(shù)/可變參數(shù)/可變關(guān)鍵字參數(shù)可以處理函數(shù)參數(shù)中參數(shù)可變的問(wèn)題。
python3.4中增加的重載機(jī)制
那么在python3.4中提供有一個(gè)轉(zhuǎn)發(fā)機(jī)制來(lái)實(shí)現(xiàn)重載
from functools import singledispatch
@singledispatch
def function(obj):
print('%r'%(obj))
@function.register(int)
def function_int(obj):
print('Integer: %d'%(obj))
@function.register(str)
def function_int(obj):
print('String: %s'%(obj))
@function.register(list)
def function_list(obj):
print('List: %r'%(obj))
if __name__ == "__main__":
function(1)
function('hello')
function(range(3))
function(object) 當(dāng)前文章:創(chuàng)新互聯(lián)Python教程:python重載是什么意思
URL地址:http://www.dlmjj.cn/article/djhoojs.html


咨詢
建站咨詢
