-1
這是從interactivepython.org取得的示例。我很努力地理解爲什麼函數按照它的方式運行。我知道它向前推進分支,然後向右轉20度。然後它自己調用並再次向前移動(這次是branch-15),然後再右轉。它直到branchLen小於5,然後停止。那麼函數什麼時候執行代碼的其餘部分,例如左轉呢?如果有人能夠按時間順序向我解釋函數的事件,我會非常感激。需要幫助瞭解遞歸示例
import turtle
def tree(branchLen,t):
if branchLen > 5:
t.forward(branchLen)
t.right(20)
tree(branchLen-15,t)
t.left(40)
tree(branchLen-15,t)
t.right(20)
t.backward(branchLen)
def main():
t = turtle.Turtle()
myWin = turtle.Screen()
t.left(90)
t.up()
t.backward(100)
t.down()
t.color("green")
tree(75,t)
myWin.exitonclick()
main()
你試過投入打印語句,看看有什麼被執行時?或者在調試器中逐行執行它? – 2014-10-02 10:29:52