Python 圣诞树和樱花树源码

Posted 万石谷,粒粒积累;千丈布,根根织成

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 圣诞树和樱花树源码相关的知识,希望对你有一定的参考价值。

樱花树:

import turtle as T
import random
import time

# 画樱花的躯干(60,t)
def Tree(branch, t):
    time.sleep(0.0005)
    if branch > 3:
        if 8 <= branch <= 12:
            if random.randint(0, 2) == 0:
                t.color(\'snow\')  #
            else:
                t.color(\'lightcoral\')  # 淡珊瑚色
            t.pensize(branch / 3)
        elif branch < 8:
            if random.randint(0, 1) == 0:
                t.color(\'snow\')
            else:
                t.color(\'lightcoral\')  # 淡珊瑚色
            t.pensize(branch / 2)
        else:
            t.color(\'sienna\')  # 赭(zhě)色
            t.pensize(branch / 10)  # 6
        t.forward(branch)
        a = 1.5 * random.random()
        t.right(20 * a)
        b = 1.5 * random.random()
        Tree(branch - 10 * b, t)
        t.left(40 * a)
        Tree(branch - 10 * b, t)
        t.right(20 * a)
        t.up()
        t.backward(branch)
        t.down()

# 掉落的花瓣
def Petal(m, t):
    for i in range(m):
        a = 200 - 400 * random.random()
        b = 10 - 20 * random.random()
        t.up()
        t.forward(b)
        t.left(90)
        t.forward(a)
        t.down()
        t.color(\'lightcoral\')  # 淡珊瑚色
        t.circle(1)
        t.up()
        t.backward(a)
        t.right(90)
        t.backward(b)

# 绘图区域
t = T.Turtle()
# 画布大小
w = T.Screen()
t.hideturtle()  # 隐藏画笔
t.getscreen().tracer(5, 0)
w.screensize(bg=\'wheat\')  # wheat小麦
t.left(90)
t.up()
t.backward(150)
t.down()
t.color(\'sienna\')

# 画樱花的躯干
Tree(60, t)
# 掉落的花瓣
Petal(200, t)
w.exitonclick()

效果:

 

圣诞树:

from turtle import *
import random
import time

n = 100.0

speed("fastest")
screensize(bg=\'seashell\')
left(90)
forward(3*n)
color("orange", "yellow")
begin_fill()
left(126)

for i in range(5):
    forward(n/5)
    right(144)
    forward(n/5)
    left(72)
end_fill()
right(126)

color("dark green")
backward(n*4.8)
def tree(d, s):
    if d <= 0: return
    forward(s)
    tree(d-1, s*.8)
    right(120)
    tree(d-3, s*.5)
    right(120)
    tree(d-3, s*.5)
    right(120)
    backward(s)
tree(15, n)
backward(n/2)

for i in range(200):
    a = 200 - 400 * random.random()
    b = 10 - 20 * random.random()
    up()
    forward(b)
    left(90)
    forward(a)
    down()
    if random.randint(0, 1) == 0:
            color(\'tomato\')
    else:
        color(\'wheat\')
    circle(2)
    up()
    backward(a)
    right(90)
    backward(b)

time.sleep(60)

效果:

参考:

  https://blog.csdn.net/weixin_43943977/article/details/102691392

以上是关于Python 圣诞树和樱花树源码的主要内容,如果未能解决你的问题,请参考以下文章

画一棵漂亮的樱花树(不同种樱花+玫瑰+圣诞树喔)

六一你收到礼物了吗?我用Python画多种不同种类的樱花树送给大家,祝六一快乐

python可以做啥

分享10个Python绘制圣诞树的源码,拿来即用

分享10个Python绘制圣诞树的源码,拿来即用

分享10个Python绘制圣诞树的源码,拿来即用