1. 程式人生 > >python 倒計時燈管

python 倒計時燈管

根據老師的程式碼 稍微改了下

#SevenDigitsDrawV1.py
import turtle
turtle.speed(0)         #改變速度
turtle.hideturtle()     #隱藏小海龜
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)
    a=input('請輸入你想要倒計時的數字:')
    while eval(a)+1:                #保證0也能畫出
        drawDate(a)       
        turtle.fd(-(60)*len(a))     #根據數字位數回到起始點
        if a!='0':
            turtle.clear()          #清空筆跡
        a=str((int(a)-1))           #減一    
    turtle.done()
main()