python筆記七(遞迴函式)

來源:互聯網
上載者:User

標籤:else   運算   表示   python筆記   gpo   進入   return   blog   資料   

在介紹遞迴函式之前,我們先介紹以下遞迴函式的使用有以下特徵:

1.遞迴函式就是函數在函數體內部調用本身

2.遞迴函式的運算規模要不斷減小,這樣才是可以運算的

3.遞迴的層數不要超過999,因為函數調用是通過棧(stack)這種資料結構實現的,每當進入一個函數調用,棧就會加一層棧幀,每當函數返回,棧就會減一層棧幀。調用層數過多就會導致棧溢出。

4.理論上所有的遞迴函式都可以用迴圈來表示,但是遞迴更形象易於理解(雖然我更習慣使用迴圈~~~~)

>>> def factorial(n):...     if n ==1:...         return 1...     else:...         return n*factorial(n-1)...>>> factorial(5)120

以上代碼我們通過迴圈來實現~~~~~

>>> def factorial(n):...    fac=1...    while n>1:...        fac=fac*n...        n-=1...    return fac>>> factorial(5)120

 

python筆記七(遞迴函式)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.