既然是画时钟,那必不可少的就是turtle和datetime模块了,以上都是自带模块不需要下载

首先我们让钟能悬空移动

def move(distance):turtle.penup()turtle.forward(distance)turtle.pendown()

再创建表针turtle

def createHand(name, length):turtle.reset()move(-length * 0.01)turtle.begin_poly()turtle.forward(length * 1.01)turtle.end_poly()hand = turtle.get_poly()turtle.register_shape(name, hand)

最后再创建时钟

def createClock(radius):turtle.reset()turtle.pensize(7)for i in range(60):move(radius)if i % 5 == 0:turtle.forward(20)move(-radius-20)else:turtle.dot(5)move(-radius)turtle.right(6)

至此主体部分差不多完成了,现在我们要为这个时钟添加细节,例如获取今天的日期;今天是星期几;动态显示表针之类的.

最后我们来定义运行时钟这个函数

def start():# 不显示绘制时钟的过程turtle.tracer(False)turtle.mode('logo')createHand('second_hand', 150)createHand('minute_hand', 125)createHand('hour_hand', 85)# 秒, 分, 时second_hand = turtle.Turtle()second_hand.shape('second_hand')minute_hand = turtle.Turtle()minute_hand.shape('minute_hand')hour_hand = turtle.Turtle()hour_hand.shape('hour_hand')for hand in [second_hand, minute_hand, hour_hand]:hand.shapesize(1, 1, 3)hand.speed(0)# 用于打印日期等文字printer = turtle.Turtle()printer.hideturtle()printer.penup()createClock(160)# 开始显示轨迹turtle.tracer(True)startTick(second_hand, minute_hand, hour_hand, printer)turtle.mainloop()

我们以主窗口来运行它

if __name__ == '__main__':start()

我把源码放在了下面,有需要的自取,记得三联

用Python画一个时钟---简易版相关推荐

  1. 用Python做一个游戏——简易版贪吃蛇

    前言 今天,我来分享个中等级的简易版贪吃蛇,这次不是用turtle库,而是用pygame库和sys库. 1.导入库 我们需要把游戏所用的库导入进来: import pygame import sys ...

  2. python(pygame)开发一个超简易版消灭病毒

    python(pygame)开发一个超简易版消灭病毒 消灭病毒游戏 以下是游戏代码:每个类都是一个py文件,需要导包 1.主程序代码 2.飞机类 3.子弹类 4.病毒类 消灭病毒游戏 消灭病毒是一个打 ...

  3. 震惊!Canvas原来还能这么搞!代码画一个时钟出来

    学会了Canvas之后,发现canvas几乎什么都能画,看着自己家里的时钟突发奇想,能不能利用canvas画一个时钟出来呢?说搞就搞! 直接上代码: <!DOCTYPE html> < ...

  4. php饼图只有一个小方块_如何用Python画一个好看的饼图

    这是一个关于画一个饼图的故事......话说在一个月黑风高的夜晚,笔者肚子饿了,脑海中回想起画饼充饥的典故,于是打算.... 成功冷到自己...... 好吧进入正题,这次我们来说说怎么用python画 ...

  5. 如何使用python画一个爱心

    1 问题 如何使用python画一个爱心. 2 方法 桌面新建一个文本文档,文件后缀改为.py,输入相关代码ctrl+s保存,关闭,最后双击运行. 代码清单 1 from turtle import ...

  6. 如何用python画一个美队盾牌

    如何用python画一个美队盾牌 import turtle# 画一个大圆 turtle.pensize(10) # 用pensize来设置画笔的粗细 turtle.pencolor('red') # ...

  7. 请问怎么用python画一个轮廓图,,例如中国地图这种,注意是轮廓图,求大佬指点

    请问怎么用python画一个轮廓图,,例如中国地图这种,注意是轮廓图 例如这个:

  8. 怎么用python画房子_用python画一个小房子

    用python画一个小房子 2020年07月22日 | 萬仟网IT编程 | 我要评论 如何用python画一个小房子?效果图如下:代码如下:import turtle# 前置p = turtle.Pe ...

  9. 用python画苹果的logo_简单几步,100行代码用Python画一个蝙蝠侠的logo

    转自:菜鸟学Python 简单几步,100行代码用Python画一个蝙蝠侠的logo-1.jpg (35.33 KB, 下载次数: 0) 2020-7-30 12:04 上传 蝙蝠侠作为DC漫画的核心 ...

  10. 学习用 JS/CSS 画一个时钟

    看到某君的时钟 Clock 代码,想学习怎么画一个时钟,逐重构之,把里面不合理的地方改进(例如用 js 写 css,那肯定不好). 全部代码如下: <html> <head>& ...

最新文章

  1. Python:数据集成
  2. python 进程池pool简单实例
  3. 【转】C# windows服务的创建与调试
  4. Oracle分页查询2
  5. 浅析当下专业网站优化公司所具有的特性
  6. python生成验证码
  7. 算法导论——基本的图算法
  8. python函数定义关键字_Python(2)深入Python函数定义
  9. C++STL与泛型编程(3)容器之分类与测试
  10. vs2008下如何部署arcengine开发的程序
  11. mac terminal ssh client shuttle 免输密码
  12. CCF CSP 201604-1 折点计数
  13. Security+ 学习笔记29 虚拟化
  14. Android studio点击按钮闪退问题
  15. 什么是黑盒测试,白盒测试,灰盒测试?
  16. 虚拟现实的伦理问题----陈教授讲座听后感
  17. Android 指纹验证
  18. 基于Java桌面GUI设计的图书管理系统
  19. 【Python】pyqt5-----QLabel
  20. c 语言 批量更改文件名,rename 批量修改文件名

热门文章

  1. opencv_3.4.2_vc14_vc15.exe下载
  2. 模拟电子技术基础笔记
  3. hp服务器bios检测硬盘接口,惠普工作站UEFI BIOS如何检测硬盘
  4. linux【文件操作】命令详解
  5. 基于51单片机的医院银行排队叫号系统proteus仿真程序原理图设计
  6. 用html 数据库登陆界面设计,登录界面代码_登录界面设计代码_vs登录界面代码-Guide信息网...
  7. java实例化对象数组_java对象实例化
  8. matlab朦胧的去雾、加雾算法
  9. 计算机字体颜色太浅,win10 windows界面字体颜色太淡如何解决
  10. 计算机应用基础教程清华大学,清华大学出版社-图书详情-《大学计算机应用基础教程(第3版)》...