7段数码管绘制(第五周作业12题)

描述

2. 请学号最后一个尾号为(2,3)的同学。画出,系统时间。具体包括:年,月,日,小时,分。

输入:

 1 import turtle, datetime
 2 def drawGap():  # 绘制数码管间隔
 3     turtle.penup()
 4     turtle.fd(5)
 5 
 6 def drawLine(draw):  # 绘制单段数码管
 7     drawGap()
 8     turtle.pendown() if draw else turtle.penup()
 9     turtle.fd(40)
10     drawGap()
11     turtle.right(90)
12 
13 def drawDigit(d):  # 根据数字绘制七段数码管
14     drawLine(True) if d in [2, 3, 4, 5, 6, 8, 9] else drawLine(False)#日中间那一横
15     drawLine(True) if d in [0, 1, 3, 4, 5, 6, 7, 8, 9] else drawLine(False)#日右下角那一竖
16     drawLine(True) if d in [0, 2, 3, 5, 6, 8, 9] else drawLine(False)#日下面那一横
17     drawLine(True) if d in [0, 2, 6, 8] else drawLine(False)#日左下角那一竖
18     turtle.left(90)
19     drawLine(True) if d in [0, 4, 5, 6, 8, 9] else drawLine(False)#日左上角那一竖
20     drawLine(True) if d in [0, 2, 3, 5, 6, 7, 8, 9] else drawLine(False)#日上面那一横
21     drawLine(True) if d in [0, 1, 2, 3, 4, 7, 8, 9] else drawLine(False)#日右上角那一竖
22     turtle.left(180)
23     turtle.penup()
24     turtle.fd(20)
25 
26 
27 def drawDate(date):
28     turtle.pencolor("red")
29     for i in date:
30         if i == '-':
31             turtle.write('', font=("Arial ", 36, "normal"))
32             turtle.pencolor("green")
33             turtle.fd(100)
34         elif i == '=':
35             turtle.write('', font=("Arial", 36, "normal"))
36             turtle.pencolor("blue")
37             turtle.fd(100)
38         elif i == '+':
39             turtle.write('', font=("Arial", 36, "normal"))
40             turtle.pencolor("yellow")
41             turtle.fd(100)
42         elif i == '*':
43             turtle.write('', font=("Arial", 36, "normal"))
44             turtle.pencolor("purple")
45             turtle.fd(100)
46         elif i == '/':
47             turtle.write('', font=("Arial", 36, "normal"))
48         else:
49             drawDigit(eval(i))
50 
51 
52 def main():
53     turtle.speed(300) #海龟移动速度
54     turtle.setup(1400, 350, 200, 200)#设置窗口大小
55     turtle.penup()
56     turtle.fd(-650)
57     turtle.pensize(5)
58     drawDate(datetime.datetime.now().strftime('%Y-%m=%d+%H*%M/'))
59     turtle.hideturtle()
60     turtle.done()
61 
62 main()

输出:

 

 

posted @ 2023-11-20 23:09  事事顺心ouo  阅读(25)  评论(0)    收藏  举报