画一个红色灯笼

image

import turtle
turtle.bgcolor("#490305")   # 设置背景颜色为#490305深红色。可试其他颜色(#02102d深蓝色 #610327深紫色 #160005黑红色)
turtle.speed(5)             # 设置海龟绘图的速度,参数为0时最快
turtle.pensize(5)           # 设置画笔粗细,即画灯笼线条的粗线为5

### ① 画灯笼主体部分(三个圆交错)
turtle.pencolor("#ffbd11")  # 设置画笔颜色,即灯笼线条颜色为#ffbd11,一种黄色
turtle.fillcolor("#de0b02") # 设置填充颜色,即灯笼颜色为#de0b02,一种红色
turtle.begin_fill()         # 开始填充颜色
turtle.circle(100)          # 画半径为100的圆   
turtle.forward(30)          # 画完一个圆后,海龟向前移动30像素
turtle.circle(100)          # 继续再画一个半径为100圆
turtle.forward(30)          # 海龟再向前移动30像素
turtle.circle(100)          # 最后再画一个圆。形成三圆交错效果。
turtle.end_fill()           # 结束填充颜色

### ② 画灯笼下面的长方形(长80,宽20)
turtle.pencolor("#de0b02")  # 长方形描边 一种红色
turtle.fillcolor("#ffbd11") # 长方形填充颜色,一种黄色
turtle.begin_fill()
turtle.forward(10)
turtle.right(90)
turtle.forward(20)  # 长方形的宽
turtle.right(90)
turtle.forward(80)  # 长方形的长
turtle.right(90)
turtle.forward(20)  # 长方形的宽
turtle.right(90)
turtle.forward(80)  # 长方形的长
turtle.end_fill()

# 海龟移动到上面,准备画上面的长方形
turtle.penup()
turtle.setheading(90)  # 假如你想让海龟向上走,但一时又想不明白是左还是右,就可以用setheading()
turtle.forward(200)
turtle.pendown()

### ③ 画灯笼上面的长方形(长80,宽20)
turtle.pencolor("#de0b02")   # 长方形描边,一种红色
turtle.fillcolor("#ffbd11")  # 长方形填充颜色,一种黄色
turtle.begin_fill()
turtle.forward(20)    # 长方形的宽
turtle.left(90)
turtle.forward(80)    # 长方形的长
turtle.left(90)
turtle.forward(20)    # 长方形的宽
turtle.left(90)
turtle.forward(80)    # 长方形的长
turtle.end_fill()

### ④ 画提绳(长60,宽30)
turtle.setheading(90)
turtle.forward(20)
turtle.setheading(180)
turtle.forward(25)

turtle.setheading(90)
turtle.forward(60)      # 提绳的长
turtle.setheading(180)
turtle.forward(30)      # 提绳的宽
turtle.setheading(-90)
turtle.forward(60)

# 海龟移动最下面,准备画掉穗
turtle.penup()
turtle.home()          # 让海龟返回原点(0,0)
turtle.setheading(-90)
turtle.forward(25)
turtle.pendown()
### ⑤ 画掉穗(从左至右画7条穗子)
turtle.pencolor("#ffbd11")
turtle.forward(60)       # 画第1穗
turtle.backward(60)
turtle.setheading(0)
turtle.forward(10)
turtle.setheading(-90)

turtle.forward(90)      # 画第2穗
turtle.backward(90)
turtle.setheading(0)
turtle.forward(10)
turtle.setheading(-90)

turtle.forward(120)     # 画第3穗
turtle.backward(120)
turtle.setheading(0)
turtle.forward(10)
turtle.setheading(-90)

turtle.forward(150)     # 画第4穗(最中间的穗子)
turtle.backward(150)
turtle.setheading(0)
turtle.forward(10)
turtle.setheading(-90)

turtle.forward(120)    # 画第5穗 (和第3穗一样长)
turtle.backward(120)
turtle.setheading(0)
turtle.forward(10)
turtle.setheading(-90)

turtle.forward(90)     # 画第6穗(和第2穗一样长)
turtle.backward(90)
turtle.setheading(0)
turtle.forward(10)
turtle.setheading(-90)

turtle.forward(60)     # 画第7穗(和第1穗一样长)
turtle.backward(60)
turtle.setheading(0)
### ⑥ 写字“春节”
turtle.penup()
turtle.goto(8,110)
turtle.write("春",font=("隶书",40))   # 写“春”
turtle.pendown()

turtle.penup()
turtle.goto(8,50)
turtle.write("节",font=("隶书",40))   # 写“节”
turtle.pendown()

### ⑦ 画散落的圆点(6个圆点坐标要不同)
# turtle.speed(1)       # 可减慢画图速度,观察调整圆的坐标位置
turtle.penup()
turtle.goto(-200,100)
turtle.dot(26,"#de0b02") # 画第1个点
turtle.pendown()

turtle.penup()
turtle.goto(-250,-100)
turtle.dot(20,"#de0b02") # 画第2个点
turtle.pendown()

turtle.penup()
turtle.goto(200,-60)
turtle.dot(30,"#de0b02") # 画第3个点
turtle.pendown()

turtle.penup()
turtle.goto(180,180)
turtle.dot(12,"#de0b02") # 画第4个点
turtle.pendown()

turtle.penup()
turtle.goto(-150,-170)
turtle.dot(22,"#de0b02") # 画第5个点
turtle.pendown()

turtle.penup()
turtle.goto(140,-150)
turtle.dot(18,"#de0b02")   # 画第6个点
turtle.pendown()

### 海龟结束画图,隐藏海龟
turtle.hideturtle()

 

posted @ 2026-09-11 22:08  子墨老师  阅读(9)  评论(0)    收藏  举报