当前位置:首页>python>用python画一棵树

用python画一棵树

  • 2026-10-11 05:52:05
用python画一棵树

用python画一棵树:

import turtle
import random

def draw_fancy_tree(t, branch_length, angle, thickness):
    """画彩色递归树"""
    if branch_length > 5:
        t.pensize(thickness)
       
        # 树枝越细颜色越浅
        color_val = branch_length / 100
        if branch_length > 30:
            t.color(139/255, 69/255, 19/255)  # 棕色树干
        else:
            t.color(0, color_val + 0.3, 0)    # 绿色树叶
       
        t.forward(branch_length)
       
        # 随机分支角度(更自然)
        left_angle = angle + random.randint(-10, 10)
        right_angle = angle + random.randint(-10, 10)
       
        # 右分支
        t.right(right_angle)
        draw_fancy_tree(t, branch_length - random.randint(8, 18),
                       angle, thickness * 0.8)
       
        # 左分支
        t.left(right_angle + left_angle)
        draw_fancy_tree(t, branch_length - random.randint(8, 18),
                       angle, thickness * 0.8)
       
        # 回到原位
        t.right(left_angle)
        t.backward(branch_length)

# 设置画布
screen = turtle.Screen()
screen.bgcolor(135/255, 206/255, 235/255)  # 天空蓝

t = turtle.Turtle()
t.speed(0)
t.left(90)
t.penup()
t.goto(0, -250)
t.pendown()

# 开始画彩色分形树
draw_fancy_tree(t, 90, 25, 12)

t.hideturtle()
screen.mainloop()

最新文章

随机文章