一、导入库
import turtle
import time
import random
二、绘制各个部分
绘制画面标题
def draw_title():
turtle.penup()
turtle.pencolor('white')
turtle.goto(random.randint(-100,100), 250)
turtle.write("中 秋",align="center", font=("Xingkai", 30, "bold"))
在图像的右下角可以属上你的名字
def draw_name():
turtle.penup()
turtle.pencolor('white')
turtle.goto(280,-250)
turtle.write("xxxx", align="center", font=("Xingkai", 10, "bold"))
画月亮
def draw_moon():
turtle.color(BC)
turtle.fillcolor('Gold')
turtle.penup()
turtle.goto(-150, 0)
turtle.pendown()
turtle.begin_fill()
turtle.circle(110)
turtle.end_fill()
写上诗,这里都可以替换,替换成你觉得符合意境的诗
def draw_words():
turtle.penup()
turtle.pencolor('Yellow1')
turtle.goto(350, -130)
turtle.write("秋\n风\n度\n河\n上\n", align="center", font=("STXingkai", 40, "bold"))
time.sleep(1)
turtle.goto(250, -130)
turtle.write("大\n野\n入\n苍\n穹\n", align="center", font=("STXingkai", 40, "bold"))
time.sleep(1)
turtle.goto(150, -130)
turtle.write("佳\n令\n随\n人\n至\n", align="center", font=("STXingkai", 40, "bold"))
time.sleep(1)
turtle.goto(50, -130)
turtle.write("明\n月\n傍\n云\n生\n", align="center", font=("STXingkai", 40, "bold"))
画山,背景里绵延不绝的山脉
def draw_mountain():
turtle.fillcolor('grey21')
turtle.pencolor('grey31')
turtle.pensize(4)
turtle.penup()
turtle.goto(-500, -250)
turtle.begin_fill()
turtle.pendown()
turtle.left(15)
turtle.forward(400)
turtle.right(30)
turtle.forward(200)
turtle.left(40)
turtle.forward(300)
turtle.right(50)
turtle.forward(300)
turtle.goto(500, -300)
turtle.goto(-500, -300)
turtle.end_fill()
画云
def draw_cloud():
step = 0.5 # 画弧时的步长
angle = 1 # 每次改变的角度
disize = 0.2 # 每次增加或减少的线宽
psize = 5 # 初始线宽
turtle.pencolor('WhiteSmoke')
turtle.pencolor('Gainsboro')
turtle.pensize(psize)
turtle.penup()
turtle.goto(-500, 200)
turtle.pendown()
turtle.forward(250)
for i in range(90):
psize += disize
turtle.pensize(psize)
turtle.right(angle)
turtle.forward(step)
for i in range(90):
psize -= disize
turtle.pensize(psize)
turtle.right(angle)
turtle.forward(step)
turtle.forward(100)
for i in range(90):
psize += disize
turtle.pensize(psize)
turtle.left(angle)
turtle.forward(step)
for i in range(90):
psize -= disize
turtle.pensize(psize)
turtle.left(angle)
turtle.forward(step)
turtle.forward(600)
初始化画笔
def draw_init():
turtle.setup(800, 600)
turtle.bgcolor(BC)
# 添加分支语句
option = input("请输入画笔速度选项:1(快速)或 2(慢速)\n")
if option == '1':
turtle.speed(10)
elif option == '2':
turtle.speed(3)
else:
print("无效选项,请输入 1 或 2")
return
主函数
def main():
draw_init()
draw_title()
draw_moon()
draw_cloud()
draw_mountain()
draw_name()
draw_words()
turtle.exitonclick() #点击才关闭画画窗口
if __name__ == '__main__':
main()
注意事项(完整的代码和数据在公主号和Github)
大家白嫖代码的时候一定要注意我标明的三方库版本,版本不对很有可能会出错,此外最后保存数据的方法有很多大家可以自行挑选更改。
最重要的一点,如果大家觉得有用跪求大家给我一个关注和点赞,有不懂的问题可以私信或者留言,欢迎大家关注我的公主号,上面有更多更详尽的代码,喜欢白嫖的有福了。
GitHub - Maekfei/Spider-projects: 爬虫实战,集合了数十个爬虫实战代码,全都亲测可用,借鉴麻烦点个star谢谢 同时欢迎访问我的github主页,copy代码的同时别忘了点个star 谢谢!