python代码实现画手表游戏

代码说明:
导入库:turtle 是 Python 的标准绘图库,用于绘制图形。

绘制表盘:

draw_watch() 函数绘制了手表的表盘和刻度标记。
绘制指针:

draw_hand() 函数绘制了时针和分针。
update_clock() 函数根据用户输入的时间更新手表上的指针。
用户输入:

main() 函数获取用户输入的时间,更新手表显示。

import turtle
import math

def draw_hand(angle, length, color):
    turtle.penup()
    turtle.goto(0, 0)
    turtle.pendown()
    turtle.setheading(90 - angle)
    turtle.pencolor(color)
    turtle.forward(length)
    turtle.backward(length)

def draw_watch():
    turtle.speed(0)
    turtle.hideturtle()
    turtle.bgcolor("white")
    turtle.pensize(2)
    
    # Draw the watch face
    turtle.penup()
    turtle.goto(0, -150)
    turtle.pendown()
    turtle.circle(150)
    
    # Draw the watch markings
    for i in range(12):
        angle = i * 30
        turtle.penup()
        turtle.goto(0, 0)
        turtle.setheading(90 - angle)
        turtle.forward(130)
        turtle.pendown()
        turtle.forward(20)
    
    turtle.penup()
    turtle.goto(0, 0)
    turtle.pendown()

def update_clock(hour, minute):
    turtle.clear()
    draw_watch()
    
    # Draw the hour hand
    hour_angle = (hour % 12) * 30 + (minute / 60) * 30
    draw_hand(hour_angle, 80, "black")
    
    # Draw the minute hand
    minute_angle = minute * 6
    draw_hand(minute_angle, 120, "blue")
    
    turtle.hideturtle()

def main():
    draw_watch()
    
    # Get user input
    hour = int(input("请输入小时 (0-23): "))
    minute = int(input("请输入分钟 (0-59): "))
    
    if 0 <= hour < 24 and 0 <= minute < 60:
        # Convert 24-hour format to 12-hour format
        hour = hour % 12
        update_clock(hour, minute)
        turtle.done()
    else:
        print("输入的时间无效,请输入有效的小时和分钟。")

if __name__ == "__main__":
    main()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值