Loading... 源代码如下: ```apache import turtle as t from turtle import * import random as r import time # 定义几个函数先 # 定义画彩灯的函数 def drawlight(): if r.randint(0, 30) == 0: color('tomato') circle(6) elif r.randint(0, 30) == 1: color('orange') circle(3) else: linewidth = 5 color('dark green') # 定义画圣诞树的函数 def tree(d, s): if d <= 0: return forward(s) tree(d - 1, s * .8) right(120) tree(d - 3, s * .5) drawlight() right(120) tree(d - 3, s * .5) right(120) backward(s) # 定义树下面小装饰的函数 def xzs(): for i in range(200): a = 200 - 400 * r.random() b = 10 - 20 * r.random() up() forward(b) left(90) forward(a) down() if r.randint(0, 1) == 0: color('tomato') else: color('wheat') circle(2) up() backward(a) right(90) backward(b) # 定义一个画雪花的函数 def drawsnow(): t.hideturtle() t.pensize(2) for i in range(200): t.pencolor("white") t.penup() t.setx(r.randint(-350, 350)) t.sety(r.randint(-100, 350)) t.pendown() dens = 6 snowsize = r.randint(1, 10) for j in range(dens): t.forward(int(snowsize)) t.backward(int(snowsize)) t.right(int(360 / dens)) n = 100.0 t.pensize(10) speed(100) t.screensize(800, 600, "white") 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) # 调用画树的函数 tree(15, n) backward(n / 2) xzs() # 写文字 t.color("dark red", "red") t.write("圣诞 快乐", align="center", font=("Comic Sans MS", 40, "bold")) # 调用雪花函数 drawsnow() t.done() # 收笔 ``` 效果图: ![圣诞树](https://pic.eeccx.com/view.php/fdf8518fadae2cc95cb7f8e14e6c7fb3.png) 在speed处修改绘画速度,屏幕大小和背景色在screensize处修改,其他可自行进行调整美化 最后修改:2025 年 01 月 20 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 2 如果觉得我的文章对你有用,请随意赞赏