python使用递归画图的几个例子

兄弟萌,话不多说,show me the code!

import turtle

t = turtle.Turtle()

def tree(branch_len):
    """画树"""
    if branch_len > 5: # 树干太短不画,递归结束条件
        t.forward(branch_len)
        t.left(20) # 左倾斜20度
        tree(branch_len-15) # 递归调用。画左边小树
        t.right(40) # 向右转40
        tree(branch_len-15) # 画右边小树
        t.left(20) # 回正
        t.backward(branch_len)

def drawSpiral(t,linelen):
    """画螺旋"""
    if linelen > 0:
        t.forward(linelen)
        t.right(90)
        drawSpiral(t,linelen-5)

def drawFiveStar(t):
    for i in range(5):
        t.forward(100)
        t.right(144)


if __name__ == __main__:
    # t.left(90)
    # t.penup()
    # t.backward(100)
    # t.pendown()
    # t.pencolor(green)
    # t.pensize(2)
    # tree(100)
    # t.hideturtle()
    # turtle.done()

    # drawSpiral(t,100)
    # turtle.done()

    t.pencolor(red)
    t.pensize(3)
    drawFiveStar(t)
    t.hideturtle()
    turtle.done()
经验分享 程序员 微信小程序 职场和发展