python实现简易动态时钟
作者:zenobia119 发布时间:2022-02-18 20:29:05
标签:python,时钟
本文实例为大家分享了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()
来源:https://blog.csdn.net/zenobia119/article/details/79039079
0
投稿
猜你喜欢
- 代码如下:Select * from T_Employee select FName,FAge from T_Employee select
- virtualenv 是用来创建一个虚拟的python环境的第三方包,一个专属于项目的python环境。安装virtualenv(请确保py
- 1. 带默认值的参数在了解带星号(*)的参数之前,先看下带有默认值的参数,函数定义如下:>> def defaultValueA
- 最近小编遇到一个奇葩问题,就是上传代码时拷贝vs里面的代码不能直接粘贴,否则空格会不符合要求,怎么解决此问题呢?下面小编给大家分享我的解决方
- 前言我自己常用的简单Python代码调试工具是IDLE和Sublime3,IDLE很少使用了,基本上用Sublime3稍微多一些,Subli
- tensorflow里面给出了一个函数用来读取图像,不过得到的结果是最原始的图像,是咩有经过解码的图像,这个函数为tf.gfile.Fast
- 本文实例讲述了python实现域名系统(DNS)正向查询的方法。分享给大家供大家参考,具体如下:域名系统(DNS)是一个分布式的数据库,主要
- 本文实例讲述了Python实现Tab自动补全和历史命令管理的方法。分享给大家供大家参考。具体分析如下:Python的startup文件,即环
- 用HZHOST实用工具集的服务器安全设置里安装了MSSQL安全配置,现在SQL2000还原不了数据库了,从还原选定设备浏览文件夹时出现&qu
- python解释器默认编码(python2与python3的区别一)python2 解释器默认编码:asciipython3 解释器默认编码
- Python自动的os库是和操作系统交互的库,常用的操作包括文件/目录操作,路径操作,环境变量操作和执行系统命令等。文件/目录操作获取当前目
- 前言:这个系列的专栏是为了保持 Python 手感而创建的,也可以用来学习 Python,因为存在知识跨越难度,所以先学习滚雪球系列为佳。二
- 实例如下:import urllib.requestimport urllib.parseimport jsonwhile True: &n
- 有些时候,程序需要进行反向遍历,此时可通过 reversed() 函数,该函数可接收各种序列(元组、列表、区间等)参数,然后返回一个“反序排
- 需求描述:平台中需要编写接口供第三方调用,需要控制调用频率,需求为5s内调用一次后不得再次调用。解决思路1.Django官方插件库中有个dj
- 本文实例讲述了PHP面向对象程序设计之类与反射API。分享给大家供大家参考,具体如下:了解类class_exists验证类是否存在<?
- 如果直接使用base64_encode和base64_decode方法的话,生成的字符串可能不适用URL地址。下面的方法可以解决该问题:UR
- 假如你拥有一个庞大的网站,内容又多,那么来访者往往很难找到自己所需要的东东,这时候你就需要一个站内搜索来帮助来访者更快的找到索要的资料了!现
- ABS(x) 函数,此函数用来返回一个数的绝对值。 ACOS(x)函数,返回X的反余弦值。X范围从1到-1,输入值从0到派,以弧度为单位。
- 实现效果:实现代码import numpy as npfrom skimage import img_as_floatimport matp