文章目录
七段数码管程序设计目的
七段数码管程序的目的是为了得到类似于下图的一种数字计时方式,最常用的用途就是记录时间,可能是年月日,也可能是小时分钟等。
下面就针对我们的目的对程序一步步进行编写
绘制思路
- 获得单个数字对应的数码管
- 获得一串数字,绘制对应的数码管
- 获得当前系统时间,绘制对应的数码管
1、绘制一个数码管的一条线
想要画七段数码管,我们首先要绘制一段数码管,我们可以定义一个函数drawline(),可以绘制一条线
绘制一条线包含两种情况
- 真实的绘制一条线
- 海龟只是移动过去,并不真实的绘制线条
- 借助if-else,完成需要功能
import turtle
def drawline(draw):
turtle.pendown()if draw else turtle.penup()
turtle.fd(40)
turtle.right(90)
2、绘制七条线,也就是七段数码管
- 七段数码管有七个基本线条组成
- 具有固定的顺序
- 不同数字显示不同线条组合
定义一个drawdigit()函数,参数digit代表我们想要绘制的数字是多少。如果是8,7条线都需要绘制;是0就不需要绘制第一条线。
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,4,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