以下是一个简单的罗盘时钟的代码示例:\n\npython\nimport turtle\nimport time\n\n# 创建窗口\nwindow = turtle.Screen()\nwindow.bgcolor("black")\n\n# 创建画笔\npen = turtle.Turtle()\npen.shape("turtle")\npen.color("white")\n\n# 绘制表盘\npen.penup()\npen.goto(0, -200)\npen.pendown()\npen.circle(200)\n\n# 绘制刻度\npen.penup()\npen.goto(0, 0)\npen.setheading(90)\n\nfor _ in range(12):\n pen.fd(180)\n pen.pendown()\n pen.fd(20)\n pen.penup()\n pen.goto(0, 0)\n pen.rt(30)\n\n# 绘制指针\nhour_hand = turtle.Turtle()\nhour_hand.shape("arrow")\nhour_hand.color("white")\nhour_hand.shapesize(stretch_wid=0.1, stretch_len=10)\n\nminute_hand = turtle.Turtle()\nminute_hand.shape("arrow")\nminute_hand.color("white")\nminute_hand.shapesize(stretch_wid=0.1, stretch_len=15)\n\nsecond_hand = turtle.Turtle()\nsecond_hand.shape("arrow")\nsecond_hand.color("red")\nsecond_hand.shapesize(stretch_wid=0.1, stretch_len=18)\n\n# 获取当前时间\ncurrent_time = time.localtime()\nhour = current_time.tm_hour\nminute = current_time.tm_min\nsecond = current_time.tm_sec\n\n# 设置指针初始位置\nhour_hand.penup()\nhour_hand.goto(0, 0)\nhour_hand.setheading(90)\nhour_hand.rt(hour * 30)\nhour_hand.pendown()\n\nminute_hand.penup()\nminute_hand.goto(0, 0)\nminute_hand.setheading(90)\nminute_hand.rt(minute * 6)\nminute_hand.pendown()\n\nsecond_hand.penup()\nsecond_hand.goto(0, 0)\nsecond_hand.setheading(90)\nsecond_hand.rt(second * 6)\nsecond_hand.pendown()\n\n# 更新指针位置\ndef update_hands():\n global hour, minute, second\n second += 1\n if second == 60:\n second = 0\n minute += 1\n if minute == 60:\n minute = 0\n hour += 1\n if hour == 12:\n hour = 0\n\n hour_hand.clear()\n hour_hand.penup()\n hour_hand.goto(0, 0)\n hour_hand.setheading(90)\n hour_hand.rt(hour * 30)\n hour_hand.pendown()\n\n minute_hand.clear()\n minute_hand.penup()\n minute_hand.goto(0, 0)\n minute_hand.setheading(90)\n minute_hand.rt(minute * 6)\n minute_hand.pendown()\n\n second_hand.clear()\n second_hand.penup()\n second_hand.goto(0, 0)\n second_hand.setheading(90)\n second_hand.rt(second * 6)\n second_hand.pendown()\n\n window.ontimer(update_hands, 1000)\n\n# 启动更新\nupdate_hands()\n\n# 等待窗口关闭\nturtle.done()\n\n\n这个罗盘时钟使用了turtle模块来进行绘图,通过计算当前时间来更新时、分、秒指针的位置。每隔1秒钟,更新指针位置一次。\n

Python Turtle 罗盘时钟代码示例

原文地址: https://www.cveoy.top/t/topic/psOk 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录