第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

為什么Python遞歸函數(shù)返回None

為什么Python遞歸函數(shù)返回None

慕森王 2019-11-04 14:13:27
以下代碼返回None某些值(例如306, 136),42, 84返回某些值(),正確返回答案。在print a和return a應(yīng)產(chǎn)生相同的結(jié)果,但它并不:def gcdIter (a,b):    c = min (a,b)    d = max (a,b)    a = c    b = d    if (b%a) == 0:        print a        return a    gcdIter (a,b%a)    print gcdIter (a,b)
查看完整描述

1 回答

?
鴻蒙傳說

TA貢獻(xiàn)1865條經(jīng)驗(yàn) 獲得超7個(gè)贊

您將忽略遞歸調(diào)用的返回值:


gcdIter (a,b%a) 

遞歸調(diào)用與對(duì)其他函數(shù)的調(diào)用沒有什么不同;如果那是您試圖產(chǎn)生的結(jié)果,您仍然需要對(duì)該調(diào)用的結(jié)果做些事情。您需要將返回值傳遞給return


return gcdIter (a,b%a)    

請(qǐng)注意,分配時(shí)可以分配給多個(gè)目標(biāo):


def gcdIter(a, b):

    a, b = min(a, b), max(a, b)

    if b % a == 0:

        return a

    return gcdIter(a, b % a)  

您真的不需要關(guān)心這里的較大和較小值。一個(gè)更緊湊的版本是:


def gcd_iter(a, b):

    return gcd_iter(b, a % b) if b else abs(a)


查看完整回答
反對(duì) 回復(fù) 2019-11-04
  • 1 回答
  • 0 關(guān)注
  • 437 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)