理解函數(shù)中的return語(yǔ)句
當(dāng)前位置:點(diǎn)晴教程→知識(shí)管理交流
→『 技術(shù)文檔交流 』
我們知道任何一門編程語(yǔ)言中都存在函數(shù),之所以要用函數(shù),是因?yàn)楹瘮?shù)能夠提高代碼的復(fù)用性、可維護(hù)性、可讀性、可測(cè)試性和性能,因此幾乎所有的編程語(yǔ)言都支持函數(shù)。 在Python中,聲明函數(shù)的語(yǔ)法是使用關(guān)鍵字def后跟函數(shù)名、參數(shù)列表和冒號(hào):,然后在縮進(jìn)塊中編寫(xiě)函數(shù)體。 def 函數(shù)名(參數(shù)列表): 函數(shù)體 其中,函數(shù)名是標(biāo)識(shí)符,用于唯一標(biāo)識(shí)函數(shù);參數(shù)列表是函數(shù)的輸入,可以包含零個(gè)或多個(gè)參數(shù),多個(gè)參數(shù)之間用逗號(hào)分隔;函數(shù)體是函數(shù)的具體實(shí)現(xiàn),可以包含一系列語(yǔ)句和返回值。 函數(shù)沒(méi)有return語(yǔ)句: 為什么這里10要用引號(hào)引起來(lái)寫(xiě)成字符串呢?原因是如果傳進(jìn)去的是數(shù)字,那么數(shù)字無(wú)法和字符串進(jìn)行相連接。 如果說(shuō)不想把10寫(xiě)成字符串,可以將km通過(guò)str轉(zhuǎn)換為字符串。 上面舉例的函數(shù)都沒(méi)有return語(yǔ)句,直接打印結(jié)果。下面我們來(lái)看看有return語(yǔ)句的函數(shù)情況。 函數(shù)有return語(yǔ)句: 為什么結(jié)果是100而不是50呢?原因是只要函數(shù)內(nèi)部碰到了return語(yǔ)句,它就會(huì)直接把return的值覆蓋掉原先的調(diào)用,即用100覆蓋了add(20,30),所以結(jié)果是100而不是50。
上面的code-04和code-05運(yùn)行的結(jié)果一樣,然而我們?yōu)槭裁匆胏ode-04,即用return呢?那是因?yàn)榇蠖鄶?shù)情況下我們的程序并不是調(diào)用完就結(jié)束了,而是后期會(huì)對(duì)return的值作更多的運(yùn)算與處理。 運(yùn)行的結(jié)果是50和100。 運(yùn)行結(jié)果的為50和None。為什么會(huì)變成None呢?那是因?yàn)樵诤瘮?shù)里面沒(méi)有return語(yǔ)句,python會(huì)預(yù)設(shè)直接幫我們r(jià)eturn None。等價(jià)于下面的code-08代碼: 總結(jié)一下:當(dāng)我們的函數(shù)一遇到return語(yǔ)句,它就會(huì)直接結(jié)束程序,不會(huì)再運(yùn)行下面的程序。 結(jié)果為7和10,print("你好!")這句被直接忽略了。 該文章在 2024/1/22 12:19:53 編輯過(guò) |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |