從每一個樹杈開始
基本思路是畫一個"Y"型, 從根部出發,然后再返回根部,然后根據需要進行轉向與迭代。只要注意筆尖的方向就好。
1 def GreenY(): 2 turtle.fd(40) 3 turtle.left(30) 4 turtle.fd(20) 5 turtle.backward(20) 6 turtle.right(60) 7 turtle.fd(20) 8 turtle.backward(20) 9 turtle.left(30) 10 turtle.backward(40) 11 def DoubleGreenY(): 12 turtle.color("green") 13 turtle.pendown() 14 # turtle.left(90) 15 for i in [30, -60]: 16 turtle.left(i) 17 GreenY() 18 turtle.left(30)
然后對於后續的紅色樹干如法炮制
1 def RedY(): 2 # 3 turtle.color("Red") 4 # turtle.left(90) 5 turtle.fd(50) 6 turtle.left(30) 7 turtle.fd(50) 8 DoubleGreenY() 9 turtle.color("Red") 10 turtle.backward(50) 11 turtle.left(-60) 12 turtle.fd(50) 13 DoubleGreenY() 14 turtle.color("Red") 15 turtle.backward(50) 16 turtle.left(30) 17 turtle.backward(50) 18 def DoubleRedY(): 19 # turtle.setup(400,400) 20 turtle.color("Red") 21 turtle.fd(50) 22 for i in [30 , -60]: 23 turtle.left(i) 24 RedY() 25 turtle.left(30) 26 turtle.backward(50)
最后輸出結果。

為了美觀,微調了樹干的長度和角度。
Ps. 這是筆者自己一點一點微調出來的,修改和維護都不容易。而且“人工的函數迭代”讓相互之間的依賴性太強。
算是初學python的第一個程序
以后有機會優化一下代碼
