猫史档案馆


【Python作品分享】递归画树【作品秀】

用户:笑到炸毛笑到炸毛查看:0 回复:1 评论:0 创建时间:2021-05-15T20:25:27


【作品展示】

center_image

 

【作品介绍】

......

 

【作品源代码】

import turtle
import random
turtle.setup(1100, 800)
turtle.speed(0)
turtle.bgcolor("SkyBlue4")
turtle.hideturtle()


def draw_tree(length):
    if length > 15:
        turtle.color("saddle brown")
        turtle.pensize(length / 10)
        angle = random.randint(1, 20)
        number = random.randint(1, 15)
        turtle.forward(length)
        turtle.right(angle)
        draw_tree(length - number)
        turtle.left(angle * 2)
        draw_tree(length - number)
        turtle.right(angle)
        turtle.backward(length)
        if random.randint(1, 100) <= 30 and length < the_length_of_the_tree / 2:
            draw_decorates()
    else:
        draw_decorates()


def draw_decorates():
    if random.randint(1, 100) <= 20:
        draw_leaves()
    else:
        draw_flowers()


def draw_leaves():
    turtle.color("green2")
    turtle.begin_fill()
    turtle.right(45)
    turtle.circle(10, 90)
    turtle.left(90)
    turtle.circle(10, 90)
    turtle.left(135)
    turtle.end_fill()
    turtle.color("green")
    turtle.begin_fill()
    turtle.right(45)
    turtle.circle(7, 90)
    turtle.left(90)
    turtle.circle(7, 90)
    turtle.left(135)
    turtle.end_fill()
    turtle.color("saddle brown")


def draw_flowers():
    turtle.color("pink")
    turtle.begin_fill()
    turtle.right(45)
    turtle.circle(7, 90)
    turtle.left(90)
    turtle.circle(7, 90)
    turtle.left(135)
    turtle.end_fill()
    turtle.color("pink2")
    turtle.begin_fill()
    turtle.right(45)
    turtle.circle(4, 90)
    turtle.left(90)
    turtle.circle(4, 90)
    turtle.left(135)
    turtle.end_fill()
    turtle.color("saddle brown")


turtle.penup()
turtle.left(90)
turtle.backward(350)
turtle.pendown()
the_length_of_the_tree = 50  # 修改树的等级
draw_tree(the_length_of_the_tree)
turtle.penup()
turtle.goto(-300, -300)
turtle.pendown()
countent = "暗梅幽闻花,卧枝伤恨底"
turtle.write(countent, font=("space mono", 16, "normal"))
turtle.done()

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 1下一页
浮躁的飓风雀HYKa浮躁的飓风雀HYKa

恶搞诗句,不要写,换两句诗去吧

 

 

 

 

 

 

 

 

 

 

 

 

 

 

点赞0


评论