用Python画一个樱花树
时间: 2023-06-11 09:08:57 浏览: 94
好的,我可以帮你用 Python 的 turtle 库画一个樱花树。下面是代码实现:
```python
import turtle
import random
# 设置画布
screen = turtle.Screen()
screen.setup(800, 800)
screen.bgcolor('#F8F8F8')
# 定义画笔
t = turtle.Turtle()
t.speed(0)
t.hideturtle()
# 定义樱花颜色
colors = ['#FFB6C1', '#FF69B4', '#DB7093', '#C71585', '#FF1493']
# 定义树枝
def branch(t, size):
if size > 0.5:
angle = random.randint(22, 30) # 随机角度
decrease = random.uniform(0.6, 0.8) # 随机比例
t.pensize(size / 10) # 根据size设置画笔粗细
t.forward(size) # 向前走
t.right(angle) # 右转角度
branch(t, size * decrease) # 递归
t.left(angle * 2) # 左转两倍的角度
branch(t, size * decrease) # 递归
t.right(angle) # 右转角度
t.backward(size) # 后退
# 定义花朵
def flower(t, size):
t.pensize(size / 10) # 根据size设置画笔粗细
t.color(random.choice(colors)) # 随机花色
t.begin_fill() # 开始填充
t.circle(size / 5) # 画圆
t.end_fill() # 结束填充
# 画树
def tree():
t.left(90) # 左转90度
t.penup() # 画笔抬起
t.goto(0, -300) # 移动到底部中央
t.pendown() # 画笔落下
t.color('#8B7765') # 设置画笔颜色
t.pensize(50) # 设置画笔粗细
t.forward(100) # 向前走
branch(t, 100) # 画树枝
# 画花
def flowers():
for i in range(50):
x = random.randint(-400, 400) # 随机x坐标
y = random.randint(200, 400) # 随机y坐标
t.penup() # 画笔抬起
t.goto(x, y) # 移动到指定位置
t.pendown() # 画笔落下
flower(t, random.randint(20, 50)) # 画花朵
# 画樱花树
tree()
flowers()
# 关闭画布
screen.exitonclick()
```
运行代码,就可以看到一个漂亮的樱花树啦!
阅读全文