python画动态圣诞树带灯
时间: 2023-12-22 16:28:46 浏览: 222
以下是一个使用Python绘制动态圣诞树并带有彩灯的示例代码:
```python
import turtle
import random
# 设置画布和画笔
canvas = turtle.Screen()
canvas.bgcolor("black")
pen = turtle.Turtle()
pen.speed(0)
pen.color("green")
# 绘制圣诞树
def draw_tree(branch_len):
if branch_len < 5:
return
else:
pen.forward(branch_len)
pen.left(30)
draw_tree(branch_len - 15)
pen.right(60)
draw_tree(branch_len - 15)
pen.left(30)
pen.backward(branch_len)
# 绘制彩灯
def draw_lights():
colors = ["red", "blue", "yellow", "orange", "purple", "pink"]
for _ in range(50):
x = random.randint(-200, 200)
y = random.randint(-200, 200)
color = random.choice(colors)
pen.penup()
pen.goto(x, y)
pen.pendown()
pen.dot(10, color)
# 绘制动态圣诞树
def draw_dynamic_tree():
pen.penup()
pen.goto(0, -200)
pen.pendown()
pen.left(90)
draw_tree(100)
draw_lights()
draw_dynamic_tree()
# 关闭画布
canvas.exitonclick()
```
这段代码使用了Python的turtle库来绘制圣诞树和彩灯。首先,我们设置了画布的背景色为黑色,并创建了一个画笔。然后,我们定义了一个递归函数`draw_tree`来绘制圣诞树的分支,函数中使用了turtle库的前进、左转和右转等方法来实现绘制。接下来,我们定义了一个`draw_lights`函数来绘制彩灯,函数中使用了随机数来确定彩灯的位置和颜色。最后,我们定义了一个`draw_dynamic_tree`函数来绘制动态的圣诞树,函数中先将画笔移动到合适的位置,然后调用`draw_tree`函数绘制圣诞树的主干,最后调用`draw_lights`函数绘制彩灯。最后,我们调用`draw_dynamic_tree`函数来执行绘制,并通过点击画布来关闭程序。
阅读全文