python实现屏保计时器的示例代码


Posted in Python onAugust 08, 2018

什么都不说先上图吧,Python初学者实现屏保计时器

python实现屏保计时器的示例代码

原理:利用Python turtle库实现快速画图,每隔一秒钟擦除屏幕,然后获得电脑实时时间,再次画图,呈现动态时间。

关于数字如果画,可以把数字理解为一个晶体管状的8(7segments),不同数字都是其演变而来,只不过对不同数字实现抬笔,落笔动作,可以对不同

import turtle, time
def drawGap():
  turtle.penup()
  turtle.fd(5)
def drawLine(draw):
  drawGap()
  turtle.pendown() if draw else turtle.penup()
  turtle.fd(40)
  drawGap()
  turtle.right(90)
def drawDigit(d):
  drawLine(True) if d in [2,3,4,5,6,8,9] else drawLine(False) #g
  drawLine(True) if d in [0,1, 3, 4, 5, 6,7, 8, 9] else drawLine(False) #c
  drawLine(True) if d in [0, 2, 3, 5, 6, 8, 9] else drawLine(False) #d
  drawLine(True) if d in [0,2,6,8] else drawLine(False) #e
  turtle.left(90) #经历一次右转后,调整左转,方向竖直向上
  drawLine(True) if d in [0,4,5,6,8,9] else drawLine(False) 
  drawLine(True) if d in [0,2,3,5,6,7,8,9] else drawLine(False)
  drawLine(True) if d in [0,1,2,3,4,7,8,9] else drawLine(False)
  turtle.left(180)
  turtle.penup()
  turtle.fd(20)
def drawDate(date):
  turtle.pencolor('red')
  for i in date:
    if i == '-':
      turtle.write('时',font=('Arial',18,'normal'))
      turtle.pencolor('green')
      turtle.fd(40)
    elif i == '=':
      turtle.write('分', font=('Arial', 18, 'normal'))
      turtle.pencolor('blue')
      turtle.fd(40)
    elif i == '+':
      turtle.write('秒', font=('Arial', 18, 'normal'))
      turtle.pencolor('yellow')
    else:
      drawDigit(eval(i))
def init():
  turtle.setup(1920,1080,0,0) #设置画布大小 200 200 为屏幕位置
  turtle.speed(10)
  turtle.penup() 
  turtle.goto(0,0)
  turtle.fd(-350)
  turtle.pensize(5)
def main():
  while True:
    turtle.clear()
    init()
    time_string = time.strftime("%H-%M=%S+", time.localtime())
    turtle.getscreen().tracer(30,0)
    drawDate(time_string) #格式化时间 2017-05=02+ 控制输入年日月
    time.sleep(1)
    turtle.hideturtle()

main()

最后可以利用pyinstaller库实现Python程序exe软件化。

:\>pip install pyinstaller
:\>pyinstaller D:\codes\dpython.py
:\>pyinstaller -F dpython.py  //可以通过-F 参数对 Python 源文件生成一个独立的可执行文件

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

Python 相关文章推荐
python中实现k-means聚类算法详解
Nov 11 Python
python实现校园网自动登录的示例讲解
Apr 22 Python
Python闭包执行时值的传递方式实例分析
Jun 04 Python
python中字符串内置函数的用法总结
Sep 13 Python
Python装饰器用法实例分析
Jan 14 Python
python ipset管理 增删白名单的方法
Jan 14 Python
Python 操作 ElasticSearch的完整代码
Aug 04 Python
python2与python3爬虫中get与post对比解析
Sep 18 Python
Python文件操作基础流程解析
Mar 19 Python
简述python&pytorch 随机种子的实现
Oct 07 Python
Python Selenium异常处理的实例分析
Feb 28 Python
Python使用MapReduce进行简单的销售统计
Apr 22 Python
详解Python 装饰器执行顺序迷思
Aug 08 #Python
python Flask 装饰器顺序问题解决
Aug 08 #Python
Python BS4库的安装与使用详解
Aug 08 #Python
python特性语法之遍历、公共方法、引用
Aug 08 #Python
用Python shell简化开发
Aug 08 #Python
在Python中使用gRPC的方法示例
Aug 08 #Python
Python实现购物评论文本情感分析操作【基于中文文本挖掘库snownlp】
Aug 07 #Python
You might like
PHP检测用户语言的方法
2015/06/15 PHP
基于PHP实现商品成交时发送短信功能
2016/05/11 PHP
PHP正则之正向预查与反向预查讲解与实例
2020/04/06 PHP
PHP dirname简单使用代码实例
2020/11/13 PHP
jQuery 获取对象 定位子对象
2010/05/31 Javascript
javascript 子窗体父窗体相互传值方法
2010/05/31 Javascript
jquery 查找iframe父级页面元素的实现代码
2011/08/28 Javascript
JS验证邮箱格式是否正确的代码
2013/12/05 Javascript
JQuery的Ajax请求实现局部刷新的简单实例
2014/02/11 Javascript
jQuery使用之标记元素属性用法实例
2015/01/19 Javascript
jQuery实现在列表的首行添加数据
2015/05/19 Javascript
javascript页面倒计时实例
2015/07/25 Javascript
基于JavaScript实现单选框下拉菜单添加文件效果
2016/06/26 Javascript
WebPack基础知识详解
2017/01/16 Javascript
React Native预设占位placeholder的使用
2017/09/28 Javascript
jQuery访问浏览器本地存储cookie、localStorage和sessionStorage的基本用法
2017/10/20 jQuery
原生JS实现的多个彩色小球跟随鼠标移动动画效果示例
2018/02/01 Javascript
select获取下拉框的值 下拉框默认选中方法
2018/02/28 Javascript
vue实现图片上传到后台
2020/06/29 Javascript
vue data对象重新赋值无效(未更改)的解决方式
2020/07/24 Javascript
全面解读Python Web开发框架Django
2014/06/30 Python
编写Python脚本批量下载DesktopNexus壁纸的教程
2015/05/06 Python
python超简单解决约瑟夫环问题
2015/05/12 Python
Python sys.argv用法实例
2015/05/28 Python
Python与Java间Socket通信实例代码
2017/03/06 Python
如何在sae中设置django,让sae的工作环境跟本地python环境一致
2017/11/21 Python
python微元法计算函数曲线长度的方法
2018/11/08 Python
浅谈python标准库--functools.partial
2019/03/13 Python
python自动化UI工具发送QQ消息的实例
2019/08/27 Python
django 模型中的计算字段实例
2020/05/19 Python
基于HTML5的WebSocket的实例代码
2018/08/15 HTML / CSS
世界上最好的儿童品牌:AlexandAlexa
2018/01/27 全球购物
Becextech新西兰:数码单反相机和手机在线商店
2018/04/27 全球购物
医学生职业规划范文
2014/01/05 职场文书
小学校长先进事迹材料
2014/05/13 职场文书
会计实训总结范文
2015/08/03 职场文书