python实现简易动态时钟


Posted in Python onNovember 19, 2018

本文实例为大家分享了python实现简易动态时钟的具体代码,供大家参考,具体内容如下

from turtle import *
from datetime import *
#移动到指定位置
def skip(step):
  penup()
  forward(step)
  pendown()
#画指针
def drawpointer(name, length):
  reset()
  skip(-length*0.1)
  begin_poly()
  forward(length*1.1)
  end_poly()
  handForm = get_poly()
  register_shape(name, handForm)
#初始化
def init():
  global hrpointer, minpointer, secpointer, weektext
  #设置turtle Logo模式,朝北
  mode("logo")
  drawpointer("hrpointer", 90)
  drawpointer("minpointer", 130)
  drawpointer("secpointer", 140)
  hrpointer = Turtle()
  hrpointer.shape("hrpointer")
  minpointer = Turtle()
  minpointer.shape("minpointer")
  secpointer = Turtle()
  secpointer.shape("secpointer")
  secpointer.pencolor("red")
  for pointer in hrpointer, minpointer, secpointer:
    pointer.shapesize(3, 1, 1)
    pointer.speed(0)
  #文字输出
  weektext = Turtle()
  weektext.hideturtle()
  weektext.penup()
#设置表盘形状
def setupClock(radius):
  reset()
#  clockPanel = Turtle()
  pensize(7)
  pencolor("blue")
  for i in range(60):
    skip(radius)
    if i%5 == 0:
      forward(20)
      skip(-radius-20)
    else:
      dot(5)
      skip(-radius)
    right(6)

#星期文本
def Week(t):
  week = ["星期一", "星期二", "星期三", "星期四", "星期五", "星期六", "星期日"]
  return week[t.weekday()]
#日期文本
def Date(t):
  y = t.year
  m = t.month
  d = t.day
  return "%s %d %d" % (y, m, d)
#绘制表针动态显示
def tick():
  t = datetime.today()
  second = t.second + t.microsecond*0.0000001
  minute = t.minute + second/60.0
  hour = t.hour + minute/60.0
  secpointer.setheading(6*second)
  minpointer.setheading(6*minute)
  hrpointer.setheading(30*hour)
  tracer(False)
  weektext.forward(65)
  weektext.write(Week(t), align="center",font=("Courier", 14, "bold"))
  weektext.back(130)
  weektext.write(Date(t), align="center",font=("Courier", 14, "bold"))
  weektext.home()
  tracer(True)
  #间隔100ms调用一次
  ontimer(tick, 100)

def main():
  tracer(False)
  init()
  setupClock(160)
  tracer(True)
  tick()
  mainloop()
if __name__ == '__main__':
  main()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
巧用Python装饰器 免去调用父类构造函数的麻烦
May 18 Python
python的urllib模块显示下载进度示例
Jan 17 Python
Python中线程的MQ消息队列实现以及消息队列的优点解析
Jun 29 Python
python如何发布自已pip项目的方法步骤
Oct 09 Python
numpy 对矩阵中Nan的处理:采用平均值的方法
Oct 30 Python
python版大富翁源代码分享
Nov 19 Python
Python SQLAlchemy入门教程(基本用法)
Nov 11 Python
Django密码存储策略分析
Jan 09 Python
在python tkinter界面中添加按钮的实例
Mar 04 Python
Python使用socket模块实现简单tcp通信
Aug 18 Python
python 贪心算法的实现
Sep 18 Python
python 实现单例模式的5种方法
Sep 23 Python
python使用Turtle库绘制动态钟表
Nov 19 #Python
python+PyQT实现系统桌面时钟
Jun 16 #Python
Windows 8.1 64bit下搭建 Scrapy 0.22 环境
Nov 18 #Python
Window环境下Scrapy开发环境搭建
Nov 18 #Python
Python中安装easy_install的方法
Nov 18 #Python
win7 x64系统中安装Scrapy的方法
Nov 18 #Python
python实现简易数码时钟
Feb 19 #Python
You might like
php定时执行任务设置详解
2015/02/06 PHP
WIN8.1下搭建PHP5.6环境
2015/04/29 PHP
PHP Mysqli 常用代码集合
2016/11/12 PHP
php pdo操作数据库示例
2017/03/10 PHP
php中时间函数date及常用的时间计算
2017/05/12 PHP
javascript onkeydown,onkeyup,onkeypress,onclick,ondblclick
2009/02/04 Javascript
extJs 下拉框联动实现代码
2010/04/09 Javascript
说明你的Javascript技术很烂的五个原因
2011/04/26 Javascript
jQuery数组处理代码详解(含实例演示)
2012/02/03 Javascript
Jquery的Tabs内容轮换效果实现代码,几行搞定
2014/02/12 Javascript
IE8下Jquery获取select选中的值post到后台报错问题
2014/07/02 Javascript
基于JavaScript实现图片点击弹出窗口而不是保存
2016/02/06 Javascript
浅析AMD CMD CommonJS规范--javascript模块化加载学习心得总结
2016/03/16 Javascript
微信小程序 开发指南详解
2016/09/27 Javascript
使用jquery datatable和bootsrap创建表格实例代码
2017/03/17 Javascript
js 获取json数组里面数组的长度实例
2017/10/31 Javascript
解决easyui日期时间框ie的兼容的问题
2018/03/01 Javascript
使用proxy实现一个更优雅的vue【推荐】
2018/06/19 Javascript
AngularJs分页插件使用详解
2018/06/30 Javascript
[02:32]【DOTA2亚洲邀请赛】iceice,梦开始的地方
2017/03/13 DOTA
[01:08:00]Fnatic vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
[04:00]黄浦江畔,再会英雄——完美世界DOTA2 TI9应援视频
2019/07/31 DOTA
Python实现获取域名所用服务器的真实IP
2015/10/25 Python
Python如何调用外部系统命令
2019/08/07 Python
使用OpenCV实现仿射变换—缩放功能
2019/08/29 Python
Python描述符descriptor使用原理解析
2020/03/21 Python
Python如何使用ElementTree解析xml
2020/10/12 Python
Pycharm添加虚拟解释器报错问题解决方案
2020/10/13 Python
马来西亚银饰品牌:JEOEL
2017/12/15 全球购物
迪奥官网:Dior.com
2018/12/04 全球购物
迪士尼英国官方商店:shopDisney UK
2019/09/21 全球购物
自考生自我鉴定范文
2013/10/01 职场文书
高中生毕业评语
2014/12/30 职场文书
地道战观后感300字
2015/06/04 职场文书
2016年共产党员公开承诺书
2016/03/24 职场文书
mongodb数据库迁移变更的解决方案
2021/09/04 MongoDB