import turtle,time #引入绘图库turtle time库
def drawGap():#绘制数码管间隔,实现数码管效果
turtle.penup()
turtle.fd(5)def drawLine(draw): #绘制单段数码管
drawGap()
turtle.pendown()if draw elseturtle.penup()
turtle.fd(40) #前进40像素
drawGap()
turtle.right(90)#旋转90度,完成一条线的绘制
def drawDight(dight):#根据数字绘制七段数码管
drawLine(True) if dight in [2,3,4,5,6,8,9] elsedrawLine(False)
drawLine(True)if dight in [0,1,3,4,5,6,7,8,9] elsedrawLine(False)
drawLine(True)if dight in [0,2,3,5,6,8,9] elsedrawLine(False)
drawLine(True)if dight in [0,2,6,8] elsedrawLine(False)
turtle.left(90)
drawLine(True)if dight in [0,4,5,6,8,9] elsedrawLine(False)
drawLine(True)if dight in [0,2,3,5,6,7,8,9] elsedrawLine(False)
drawLine(True)if dight in [0,1,2,3,4,7,8,9] elsedrawLine(False)
turtle.left(180)
turtle.penup()#为绘制后续数字确定位置
turtle.fd(20) #为绘制后续数字确定位置
def drawDate (date):#data为日期,格式为“%Y-%m=%d+”
turtle.pencolor("red")for i indate:if i=='-':
turtle.write('年',font=("Arial",18,"normal"))
turtle.pencolor("green")
turtle.fd(40)elif i=='=':
turtle.write('月',font=("Arial",18,"normal"))
turtle.pencolor("blue")
turtle.fd(40)elif i=='+':
turtle.write('日',font=("Arial",18,"normal"))else:
drawDight(eval(i))defmain():
turtle.setup(800,350,200,200)
turtle.penup()
turtle.fd(-300)
turtle.pensize(5)
drawDate(time.strftime('%Y-%m=%d+',time.gmtime()))#获取系统时间并格式化
turtle.hideturtle()
turtle.done()
main()