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获取CPU、内存和硬盘等windowns系统信息的2个例子
Apr 15 Python
Python实现Linux下守护进程的编写方法
Aug 22 Python
跟老齐学Python之让人欢喜让人忧的迭代
Oct 02 Python
python中assert用法实例分析
Apr 30 Python
基于ID3决策树算法的实现(Python版)
May 31 Python
Python导入模块时遇到的错误分析
Aug 30 Python
django ajax json的实例代码
May 29 Python
Python封装原理与实现方法详解
Aug 28 Python
对python_discover方法遍历所有执行的用例详解
Feb 13 Python
使用 Python 清理收藏夹里已失效的网站
Dec 03 Python
有趣的Python图片制作之如何用QQ好友头像拼接出里昂
Apr 22 Python
解决python的空格和tab混淆而报错的问题
Feb 26 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 curl的深入解析
2013/06/02 PHP
PHP数据过滤的方法
2013/10/30 PHP
PHP结合jQuery实现找回密码
2015/07/22 PHP
php生成curl命令行的方法
2015/12/14 PHP
php检查函数必传参数是否存在的实例详解
2017/08/28 PHP
PHP PDOStatement::errorInfo讲解
2019/01/31 PHP
showModelessDialog()使用详解
2006/09/21 Javascript
javascript面向对象编程代码
2011/12/19 Javascript
Script标签与访问HTML页面详解
2014/01/10 Javascript
JavaScript对象反射用法实例
2015/04/17 Javascript
js实现时间显示几天前、几小时前或者几分钟前的方法集锦
2015/05/29 Javascript
JavaScript的instanceof运算符学习教程
2016/06/08 Javascript
jQuery动态添加与删除tr行实例代码
2016/10/18 Javascript
EasyUI Combobox设置默认值 获取text的方法
2016/11/28 Javascript
jQuery代码实现实时获取时间
2017/01/29 Javascript
javascript事件的传播基础实例讲解(35)
2017/02/14 Javascript
微信小程序scroll-view实现横向滚动和上拉加载示例
2017/03/06 Javascript
vue+socket.io+express+mongodb 实现简易多房间在线群聊示例
2017/10/21 Javascript
javascript、php关键字搜索函数的使用方法
2018/05/29 Javascript
javascript显示动态时间的方法汇总
2018/07/06 Javascript
Python中几种导入模块的方式总结
2017/04/27 Python
python实现简单聊天应用 python群聊和点对点均实现
2017/09/14 Python
Pycharm2020.1安装无法启动问题即设置中文插件的方法
2020/08/07 Python
Python脚本实现Zabbix多行日志监控过程解析
2020/08/26 Python
python海龟绘图之画国旗实例代码
2020/11/11 Python
Java和Javasciprt的区别
2012/09/02 面试题
解释DataSet(ds) 和 ds as DataSet 的含义
2014/07/27 面试题
Java中的异常处理机制的简单原理和应用
2013/04/27 面试题
银行工作检查书范文
2014/01/31 职场文书
策划总监岗位职责
2014/02/16 职场文书
财务部总监岗位职责
2014/03/12 职场文书
报关报检委托书
2014/04/08 职场文书
2014最新党员批评与自我批评材料
2014/09/24 职场文书
精神病医院见习报告
2014/11/03 职场文书
Go遍历struct,map,slice的实现
2021/06/13 Golang
pytest实现多进程与多线程运行超好用的插件
2022/07/15 Python