大家好,给大家分享一下turtle七段数码管画数字和字母,很多人还不知道这一点。下面详细解释一下。现在让我们来看看!
import turtle
def curvemove():
for i in range(200):
turtle.right(1)
turtle.forward(1)
def drawGap():
turtle.penup()
turtle.fd(5)
def drawLine(draw):
drawGap()
turtle.pendown() if draw else turtle.penup()
turtle.fd(40)
drawGap()
turtle.right(90)
def drawDigit(digit):
drawLine(True) if digit in [2,3,4,5,6,8,9] else drawLine(False)
drawLine(True) if digit in [0,1,3,4,5,6,7,8,9] else drawLine(False)
drawLine(True) if digit in [0,2,3,5,6,8,9] else drawLine(False)
drawLine(True) if digit in [0,2,6,8] else drawLine(False)
turtle.left(90)
drawLine(True) if digit in [0,4,5,6,8,9] else drawLine(False)
drawLine(True) if digit in [0,2,3,5,6,7,8,9] else drawLine(False)
drawLine(True) if digit in [0,1,2,3,4,7,8,9] else drawLine(False)
turtle.left(180)
turtle.penup()
turtle.fd(20)
def drawDate(date):
turtle.pencolor("red")
for i in date:
if i =='-':
turtle.write('大',font=("Arial",32,"normal"))
turtle.pencolor("green")
turtle.fd(40)
elif i=='=':
turtle.write('帅',font =("Arial",32,"normal"))
turtle.pencolor("blue")
turtle.fd(40)
elif i=='+':
turtle.write('比',font=("Arial",32,"normal"))
else:
drawDigit(eval(i))
def main():
turtle.setup(800,350,200,200)
turtle.penup()
turtle.fd(-200)
turtle.pendown()
turtle.color('red','pink')
turtle.pensize(2)
turtle.begin_fill()
turtle.left(140)
turtle.forward(111.65)
curvemove()
turtle.left(120)
curvemove()
turtle.forward(111.65)
turtle.end_fill()
turtle. penup()
turtle.goto(-250, 85)
turtle.pendown()
turtle.write("LOVE小香香", font=("Arial", 18, "normal"))
turtle.left(140)
turtle.fd(200)
turtle.pensize(5)
drawDate("520-=+")
turtle.hideturtle()
turtle.done()
main()
Turtle的运动方法:
turtle.forward(d): 命令箭头移动d像素
turtle.backward(d): 命令箭头向指向的反方向移动d像素,箭头的指向不变
turtle.goto(x, y): 将箭头移动到一个坐标
turtle.home(): 将箭头移动到起点(0,0)和向东
turtle.penup(): 抬起箭头
turtle.pendown(): 放下箭头
turtle.right(angle): 箭头顺时针旋转angle度,同理left逆时针旋转
turtle.setheading(angle): 将箭头方向设定为指定角度。0——东、90——北、180——西、270——南
turtle.speed(s): 设置箭头的速度为一个在1到10之间的整数,10最大
Turtle箭头的颜色、填充和绘制方法
turtle.color("red"): 设置箭头颜色为红色
turtle.fillcolor("red"): 设置箭头填充颜色为红色
turtle.pensize(): 设置画笔的宽度
turtle.begin_fill(): 在填充图形前访问这个方法
turtle.end_fill(): 在最后调用begin_fill之前填充绘制图形
turtle.filling(): 返回填充状态,Ture代表填充,False代表没有填充
turtle.clear(): 清除窗口,箭头的状态和位置不受影响
turtle.reset(): 清除窗口,将状态和位置复位为初始状态
turtle.screensize(w, h): 设置画布的宽度和高度
turtle.hideturtle(): 隐藏箭头
turtle.showturtle(): 显示箭头
turtle.circle(r, ext, step): 绘制一个指定半径、范围和阶数为r圆
turtle.write("string", font=("Arial", 8, "normal")): 绘制文本字符串string,字体是由字体名、字体大小和字体类型三部分组成