Python具有強大的數據處理功能,這一章我們就講解它的冰山一角,利用庫函數獲取系統時間並用書那關的形式進行展示、

源代碼如下:
| #SevenDigitsDrawV2.py | |
| import turtle, time | |
| 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('2018-10=10+') | |
| drawDate(time.strftime('%Y-%m=%d+',time.gmtime())) #gmtime()獲取系統時間 | |
| turtle.hideturtle() #隱藏箭頭顯示 | |
| turtle.done() | |
| main() |
我們采用了模塊化的編程思想,將其分別拆分為drawGap()--數碼管間隔、drawLine()--繪制單段數碼管、drawDigit()--繪制七段數碼管、drawDate---系統時間格式化,並以main()函數啟動程序運行。
贊賞是對博主最大的支持!

版權聲明:
本文中所有文字、圖片版權均屬本人所有,如需轉載請注明來源
