"""7段数码管绘制""" import turtle, datetime 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(d): # 根据数字绘制七段数码管 drawLine(True) if d in [2, 3, 4, 5, 6, 8, 9] else drawLine(False)#日中间那一横 drawLine(True) if d in [0, 1, 3, 4, 5, 6, 7, 8, 9] else drawLine(False)#日右下角那一竖 drawLine(True) if d in [0, 2, 3, 5, 6, 8, 9] else drawLine(False)#日下面那一横 drawLine(True) if d in [0, 2, 6, 8] else drawLine(False)#日左下角那一竖 turtle.left(90) drawLine(True) if d in [0, 4, 5, 6, 8, 9] else drawLine(False)#日左上角那一竖 drawLine(True) if d in [0, 2, 3, 5, 6, 7, 8, 9] else drawLine(False)#日上面那一横 drawLine(True) if d 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 ", 36, "normal")) turtle.pencolor("green") turtle.fd(50) elif i == '=': turtle.write('月', font=("Arial", 36, "normal")) turtle.pencolor("blue") turtle.fd(50) elif i == '+': turtle.write('日', font=("Arial", 36, "normal")) turtle.pencolor("yellow") turtle.fd(50) elif i == '*': turtle.write('时', font=("Arial", 36, "normal")) turtle.pencolor("purple") turtle.fd(50) elif i == '/': turtle.write('分', font=("Arial", 36, "normal")) turtle.pencolor("gold") turtle.fd(50) elif i == '$': turtle.write('秒', font=("Arial", 36, "normal")) else: drawDigit(eval(i)) def main(): turtle.speed(30) turtle.setup(1400,350,200,200) turtle.penup() turtle.fd(-650) turtle.pensize(5) drawDate(datetime.datetime.now().strftime('%Y-%m=%d+%H*%M/%S$')) turtle.hideturtle() turtle.done() main()
绘制效果图:
标签:turtle,12,False,14,drawLine,else,数码管,fd,True From: https://www.cnblogs.com/plxels/p/16966045.html