1. 导入turtle库和time库。
2. 创建画布和画笔。
3. 设置画笔速度为最快速度。
4. 定义画时钟面的函数,使用循环画12个刻度,区分整点和非整点。
5. 定义画时针、分针和秒针的函数,注意它们的长短和转动速度。
```python
import turtle
import time
创建画布和画笔
screen = turtle.Screen()
pen = turtle.Turtle()
pen.speed(0) 最快速度
画出时钟外框和刻度
def draw_clock_face():
pen.pensize(2)
for i in range(60):
if i % 5 == 0: 整点刻度
pen.pensize(3)
pen.forward(15)
else: 非整点刻度
pen.pensize(1)
pen.forward(7)
pen.backward(15)
pen.right(6) 每次转6度
画时针、分针和秒针
def draw_hands(h, m, s):
画时针
pen.penup()
pen.goto(0, 0)
pen.color("red")
pen.pendown()
pen.setheading(h * 30)
pen.forward(100)
画分针
pen.penup()
pen.goto(0, 0)
pen.color("blue")
pen.pendown()
pen.setheading(m * 6)
pen.forward(100)
画秒针
pen.penup()
pen.goto(0, 0)
pen.color("green")
pen.pendown()
pen.setheading(s * 6)
pen.forward(100)
主循环
while True:
draw_clock_face()
h, m, s = time.localtime(), time.localtime(), time.localtime()
draw_hands(h, m, s)
screen.ontimer(lambda: draw_hands(h, m, s), 1000) 每秒更新一次
screen.mainloop()
```
运行上述代码,就可以在turtle库创建的画布上绘制出一个时钟,并且每秒更新一次时间。