python繪製七段數碼管,顯示當前日期

2021-10-23 23:21:07 字數 2480 閱讀 6852

import turtle,time #呼叫turtle,time庫

defdrawgap()

:#定義drawgap函式

turtle.penup(

) turtle.fd(5)

#抬畫筆,移動

defdrawline

(draw)

:#定義drawline函式

drawgap(

)if draw :

turtle.pendown(

)else

: turtle.penup(

) turtle.fd(40)

drawgap(

) turtle.right(90)

defdrawdigit

(digit)

:#定義drawdigit函式

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)

defdrawdate

(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.fd(40)

elif i ==

'+':

turtle.write(

"日",font=

("arial",18

,"normal"))

else

: drawdigit(

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.down(

)main(

)#執行main函式

參考

繪製七段數碼管

seven digits draw v1.0 第一,繪製線 第二,繪製七段數碼管組成的數字 第三,繪製優化數碼管間距 第四,繪製多組數字 第五,獲取系統時間 第六,主函式執行程式。如下 import turtle as t import time def drawline draw drawgap ...

七段數碼管繪製

步驟1 繪製單個數字對應的數碼管 步驟2 獲得一串數字,繪製對應的數碼管 步驟2 獲得當前系統時間,繪製對應的數碼管 步驟1 繪製單個數字對應的數碼管 基本問題是繪製一條線,可將其定義為乙個基本函式 def drawline draw turtle.pendown if draw else turt...

七段數碼管繪製

七段數碼管繪製 import turtle as t import time as t def drawgap 繪製數碼管的間隔 t.penup t.fd 5 def drawline draw 繪製單段數碼管,draw為true時,則實畫 drawgap t.pendown if draw els...