案例:写春联
编程代码
import turtleturtle.Screen().bgcolor("#ffc373") # 设置背景颜色为#ffc373,一种黄色。
color_word = "black" # 设置书法的颜色为black。
color_paper = "#ea182a" # 设置红纸的颜色为#ea182a横批 = "吉祥如意" # 定义字符串变量,存放横批的内容。
上联 = "虎跃龙腾兴骏业" # 定义字符串变量,存放上联的内容
下联 = "莺歌燕舞羡鹏程" # 定义字符串变量,存放下联的内容# 变量x1和y1,控制上联第一个字的坐标位置
x1 = -200
y1 = 80
# 变量x2和y2,控制下联第一个字的坐标位置
x2 = 200
y2 = 80
# 变量x3和y3,控制横批第一个字的坐标位置
x3 = -70
y3 = 160def drawRect(color, x, y, width, high):pen.color(color) # 设置红纸的颜色pen.penup()pen.goto(x, y) # 设置横批红纸的坐标pen.pendown()pen.begin_fill()for _ in range(2):pen.forward(width)pen.right(90)pen.forward(high)pen.right(90)pen.end_fill()# 第一步写上联
# 画上联红纸
pen = turtle.Pen()
drawRect(color_paper, x1 - 30, y1 + 65, 60, 380)# 写上联文字
pen.color(color_word)
for s in 上联:pen.penup()pen.goto(x1, y1)pen.pendown()pen.write(s, align="center", font=("华文楷体", 30, "bold"))y1 -= 50# 第二步:写下联
# 画下联红纸
drawRect(color_paper, x2 - 30, y2 + 65, 60, 380)# 写下联文字
pen.color(color_word)
for s in 下联:pen.penup()pen.goto(x2, y2)pen.pendown()pen.write(s, align="center", font=("华文楷体", 30, "bold"))y2 -= 50# 第三步:写横批
# 画横批红纸
drawRect(color_paper, x3 - 35, y3 + 55, 210, 60)# 写横批文字
pen.color(color_word) # 设置春联文字的颜色为变量color_word
for s in 横批: # 横批共有4个字,所以需要循环4次。pen.penup()pen.goto(x3, y3)pen.pendown()pen.write(s, align="center", font=("华文楷体", 30, "bold"))x3 += 50# 海龟绘图结束,隐藏海龟
pen.hideturtle()
turtle.done()
视频讲解
插入视频