代码如下:
from turtle import* import random from math import* t = cos(radians(heading()+45))/8+0.25 delay(0) hideturtle() screensize(1200,1200,'black') speed(0) goto(-700,-280) pencolor('white') pensize(222) pendown() seth(0) forward(1400) def curvemove(x,y): penup() goto(x,y) pensize(1) color('red','pink') begin_fill() left(140) forward(2.1165) for i in range(200): right(1) forward(0.05) left(120) for i in range(200): right(1) forward(0.05) forward(2.1165) end_fill() def stars1 (x,y,left_angle,edge_len): pensize(1) pencolor('white') fillcolor('white') penup() goto(x,y) begin_fill() pendown() left(left_angle) for _ in range(5): forward(edge_len) right(144) end_fill() left(-left_angle) def stars (x,y,left_angle,edge_len): pensize(1) pencolor('yellow') fillcolor('yellow') penup() goto(x,y) begin_fill() pendown() left(left_angle) for _ in range(5): forward(edge_len) right(144) end_fill() left(-left_angle) for _ in range(40): x = random.randint(-700,700) y = random.randint(-100,700) edge_len = random.randint(3,8) left_angle = random.randint(0,180) stars(x,y,left_angle,edge_len) penup() def tree1(d, s): if d <= 0: return if d > 6: pensize(d) pencolor(t,t,t) if d<=6 and d>3: pensize(10) pencolor('dark green') if d <=3: pensize(5) pencolor('seagreen') forward(s) tree1(d-1, s*.8) right(120) tree1(d-3, s*.5) right(120) tree1(d-3, s*.5) right(120) backward(s) def tree2(n,k): if n <= 0: return if n > 5: pensize(n) pencolor(t,t,t) if n <=5: pensize(8) pencolor('seagreen') forward(k) tree2(n-1, k*.8) right(120) tree2(n-3, k*.5) right(120) tree2(n-3, k*.5) right(120) backward(k) def tree3(n,k): if n <= 0: return if n > 5: pensize(n) pencolor(t,t,t) if n <=5: pensize(8) pencolor('dark green') forward(k) tree3(n-1, k*.8) right(120) tree3(n-3, k*.5) right(120) tree3(n-3, k*.5) right(120) backward(k) def tree0(o,p,z,q): goto(z,q) seth(90) pendown() tree2(o,p) penup() def tree(d,s,a,b): goto(a,b) seth(90) pendown() tree1(d,s) penup() seth(90) fd(d/5) pendown() seth(-90) pencolor(t,t,t) pensize(d*2) fd(d/3) penup() seth(90) for _ in range(20): f=random.randint(a-100,a+100) g=random.randint(b,s) x=random.randint(a-100,a+100) y=random.randint(b,s) edge_len = random.randint(3,8) left_angle = random.randint(0,180) stars(f,g,left_angle,edge_len) curvemove(x,y) for _ in range(30): x1 = random.randint(a-100,a+100) y1 = random.randint(b,s) edge_len1 = random.randint(3,8) left_angle1 = random.randint(0,180) stars1(x1,y1,left_angle1,edge_len1) penup() def treez(o,p,z,q): goto(z,q) seth(90) pendown() tree3(o,p) penup() for _ in range(8): x = random.randint(-700,700) w = random.randint(-700,700) e = random.randint(-700,700) treez(10,10,x,-170) treez(8,20,w,-170) tree0(5,15,e,-170) for _ in range(3): x = random.randint(-600,800) w = random.randint(-600,800) e = random.randint(-600,800) tree0(8,28,x,-173) treez(12,37,w,-174) tree0(13,45,e,-186) for _ in range(2): x = random.randint(-500,700) w = random.randint(-500,800) e = random.randint(-500,800) tree0(13,60,x,-175) tree0(12,55,w,-187) tree0(13,70,e,-180) tree(15,82,-600,-188) goto(-600,200) pensize(2) pencolor('yellow') fillcolor('yellow') begin_fill() seth(-72) pendown() for _ in range(5): forward(35) right(144) end_fill() for _ in range(400): x = random.randint(-700,700) y = random.randint(-700,700) edge_len = random.randint(3,4) left_angle = random.randint(0,180) stars1(x,y,left_angle,edge_len) penup()
最后星星亮起来那一下感觉还可以,喜欢的家人们可以试一试