##datetime.py
import turtle, time
def drawLine(draw, fd):
turtle.penup()
turtle.fd(2)
if draw:
turtle.pendown()
turtle.fd(fd)
turtle.penup()
turtle.fd(2)
turtle.right(90)
def drawDigit(i, fd, gap=20):
drawLine(True, fd) if i in [2,3,4,5,6,8,9] else drawLine(False, fd)
drawLine(True, fd) if i in [0,1,3,4,5,6,7,8,9] else drawLine(False, fd)
drawLine(True, fd) if i in [0,2,3,5,6,8,9] else drawLine(False, fd)
drawLine(True, fd) if i in [0,2,6,8] else drawLine(False, fd)
turtle.left(90)
drawLine(True, fd) if i in [0,4,5,6,8,9] else drawLine(False, fd)
drawLine(True, fd) if i in [0,2,3,5,6,7,8,9] else drawLine(False, fd)
drawLine(True, fd) if i in [0,1,2,3,4,7,8,9] else drawLine(False, fd)
turtle.left(180)
turtle.fd(gap)
def drawDate(date, fd):
turtle.pencolor('red')
for i in date:
if i == "-":
turtle.write('年', font=('Arial', 18, 'normal'))
turtle.fd(40)
turtle.pencolor('green')
elif i == "=":
turtle.write('月', font=('Arial', 18, 'normal'))
turtle.fd(40)
turtle.pencolor('blue')
elif i == "+":
turtle.write('日', font=('Arial', 18, 'normal'))
turtle.fd(40)
else:
drawDigit(int(i), fd)
def drawTime(time, fd=20, gap=5):
turtle.pencolor('red')
for i, d in enumerate(time):
if d == ":":
if i==2:
turtle.pencolor('green')
if i==5:
turtle.pencolor('blue')
turtle.right(90)
turtle.fd(10)
turtle.write(':', font=('Arial', 20, 'normal'))
turtle.left(90)
turtle.fd(10)
turtle.left(90)
turtle.fd(10)
turtle.right(90)
else:
drawDigit(int(d), fd, gap)
def set_pen_position(x, y):
turtle.penup()
turtle.goto(x, y)
turtle.pendown()
def draw_datetime():
turtle.clear()
set_pen_position(-300, 100)
turtle.pensize(5)
drawDate(time.strftime('%Y-%m=%d+', time.gmtime()), 40)
set_pen_position(-300, -80)
turtle.pensize(3)
drawTime(time.strftime('%H:%M:%S', time.localtime()), 20, 10)
turtle.ontimer(draw_datetime, 1000)
turtle.update()
def main():
turtle.setup(800, 350, 200, 200)
turtle.tracer(False) # 关闭动画,并设置延迟为0
# turtle.speed('fastest') # 设置绘图速度为最快
turtle.hideturtle()
draw_datetime()
turtle.mainloop()
if __name__ == "__main__":
main()
保存datetime.py
文件后,在终端执行:
python datetime.py