代码如下:
import turtle as tu
import random as ra#天空
tu.colormode(255)
tu.setup(515,315)
tu.bgcolor('midnight blue')
tu.speed(100)#云层
tu.color('dark slate blue')
tu.pu()
tu.pensize(5)
tu.goto(ra.randint(-700,-258),128)
tu.pd()
tu.begin_fill()
tu.seth(-40)
for i in range(10):tu.circle(40,80)tu.circle(-40,80)
tu.goto(258,-158)
tu.goto(-258,-158)
tu.goto(-258,108)
tu.end_fill()
tu.pu()tu.goto(ra.randint(-700,-258),108)
tu.color('MediumPurple3')
tu.pd()
tu.begin_fill()
tu.seth(-40)
for i in range(10):tu.circle(40,80)tu.circle(-40,80)
tu.goto(258,-158)
tu.goto(-258,-158)
tu.goto(-258,108)
tu.end_fill()
tu.pu()tu.goto(ra.randint(-700,-258),88)
tu.color('SlateBlue3')
tu.pd()
tu.begin_fill()
tu.seth(-40)
for i in range(10):tu.circle(40,80)tu.circle(-40,80)
tu.goto(258,-158)
tu.goto(-258,-158)
tu.goto(-258,108)
tu.end_fill()
tu.pu()tu.goto(ra.randint(-700,-258),68)
tu.color('SlateBlue2')
tu.pd()
tu.begin_fill()
tu.seth(-40)
for i in range(10):tu.circle(40,80)tu.circle(-40,80)
tu.goto(258,-158)
tu.goto(-258,-158)
tu.goto(-258,108)
tu.end_fill()
tu.pu()tu.goto(ra.randint(-700,-258),48)
tu.color('MediumPurple2')
tu.pd()
tu.begin_fill()
tu.seth(-40)
for i in range(10):tu.circle(40,80)tu.circle(-40,80)
tu.goto(258,-158)
tu.goto(-258,-158)
tu.goto(-258,108)
tu.end_fill()
tu.pu()tu.goto(ra.randint(-700,-258),8)
tu.color('medium purple')
tu.pd()
tu.begin_fill()
tu.seth(-40)
for i in range(10):tu.circle(40,80)tu.circle(-40,80)
tu.goto(258,-158)
tu.goto(-258,-158)
tu.goto(-258,108)
tu.end_fill()
tu.pu()tu.goto(ra.randint(-700,-258),-28)
tu.color('SlateBlue1')
tu.pd()
tu.begin_fill()
tu.seth(-40)
for i in range(10):tu.circle(40,80)tu.circle(-40,80)
tu.goto(258,-158)
tu.goto(-258,-158)
tu.goto(-258,108)
tu.end_fill()
tu.pu()tu.goto(ra.randint(-700,-258),-58)
tu.color('light slate blue')
tu.pd()
tu.begin_fill()
tu.seth(-40)
for i in range(10):tu.circle(40,80)tu.circle(-40,80)
tu.goto(258,-158)
tu.goto(-258,-158)
tu.goto(-258,108)
tu.end_fill()
tu.pu()tu.goto(ra.randint(-700,-258),-88)
tu.color('light steel blue')
tu.pd()
tu.begin_fill()
tu.seth(-40)
for i in range(10):tu.circle(40,80)tu.circle(-40,80)
tu.goto(258,-158)
tu.goto(-258,-158)
tu.goto(-258,108)
tu.end_fill()
tu.pu()#山tu.pensize(50)
tu.pencolor('lavender')
tu.goto(-258,-108)
tu.seth(60)
tu.pd()
tu.forward(30)
tu.seth(-60)
tu.forward(500)
tu.seth(60)
tu.forward(500)
tu.seth(-60)
tu.forward(400)
tu.pu()tu.pencolor('royal blue')
tu.goto(ra.randint(-700,0),-118)
tu.seth(60)
tu.pd()
tu.forward(30)
tu.seth(-60)
tu.forward(400)
tu.seth(60)
tu.forward(400)
tu.seth(-60)
tu.forward(400)
tu.pu()tu.pencolor('RoyalBlue3')
tu.goto(ra.randint(-700,-150),-98)
tu.seth(60)
tu.pd()
tu.forward(30)
tu.seth(-60)
tu.forward(400)
tu.seth(60)
tu.forward(400)
tu.seth(-60)
tu.forward(400)
tu.pu()#地面
tu.pensize(100)
tu.pencolor('SlateBlue4')
tu.goto(-258,-158)
tu.seth(0)
tu.pd()
tu.forward(500)
tu.pu()#小石头
tu.pencolor('Royalblue2')
for i in range(4):x=ra.randint(-258,258)y=ra.randint(-158,-120)tu.goto(x,y)tu.pd()tu.write('🔺',font=("Arial Rounded" , 60 , "normal"))tu.pu()tu.done()
生成效果是这样的
第一张图是公式计算递减的颜色排布,看上去渐变得跟舒服一点。我在一个列表文件中保存了这些数据
|
换成其他色调的效果: