在函數內調用當前函數自己的函數就是遞歸函數python
下面是一個遞歸函數的實例:函數
第一次接觸遞歸函數的人,都會被它調用自己而搞得暈頭轉向,並且看上面的函數調用,獲得的結果會是:ui
爲何會得出上面的結果呢?由於都把調用函數自己以後的代碼給忘記了,就是else以後的python 代碼。spa
實際此遞歸函數輸出的是如下結果:blog
相信你們看到這裏都有點蒙,小編也同樣,我第一次看到這個遞歸函數時,只能理解到第一個結果。那是由於,大部分人在作事情的時候,中斷第一件事,被安排去作第二件事的時候,就會把第一件過後續的事情給忘記,若是在作第二件事的時候,又被中斷,被安排去作第三件事,就會把第一件、第二件要作的後續的事情給忘記......,這就是不理解遞歸函數的緣由。遞歸
下面我把此遞歸函數作了一個分解,但願可以幫到你們。 gui
詳解遞歸函數,當調用遞歸函數digui(3)時,執行過程以下:im
在調用函數自己時,它以後的代碼並無結束,而是在等待條件爲False 時,再接着執行以後的代碼,同一個顏色的print()語句等待對應顏色的函數。db