main str 函数 pla hid ria 数码管 awd
- #DrawSevenSegDisplay.py import turtle,
- datetime def drawLine(draw) : #绘制单段数码管turtle.pendown() if draw
- else turtle.penup() turtle.fd(40) 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) : #获得要输出的数字
- for i in date: drawDigit(eval(i))#注意: 通过eval()函数将数字变为整数def main() : turtle.setup(800, 350, 200, 200) turtle.penup() turtle.fd( - 300) turtle.pensize(5) drawDate(datetime.datetime.now().strftime(' % Y % m % d')) turtle.hideturtle() main()
- #DrawSevenSegDisplay.py 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", 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: drawDigit(eval(i)) def main() : turtle.setup(800, 350, 200, 200) turtle.penup() turtle.fd( - 350) turtle.pensize(5) drawDate(datetime.datetime.now().strftime(' % Y - %m = %d + ')) turtle.hideturtle() main()
【Python】七段数码显示管
来源: http://www.bubuko.com/infodetail-2227970.html