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库urllib与urllib2主要区别分析
Jul 13 Python
python中threading超线程用法实例分析
May 16 Python
Python入门学习指南分享
Apr 11 Python
浅谈Python traceback的优雅处理
Aug 31 Python
TensorFlow实现模型评估
Sep 07 Python
Python使用os.listdir()和os.walk()获取文件路径与文件下所有目录的方法
Apr 01 Python
Python空间数据处理之GDAL读写遥感图像
Aug 01 Python
对Django 中request.get和request.post的区别详解
Aug 12 Python
python编写简单端口扫描器
Sep 04 Python
Python 实现向word(docx)中输出
Feb 13 Python
Python Selenium破解滑块验证码最新版(GEETEST95%以上通过率)
Jan 29 Python
如何用Python进行时间序列分解和预测
Mar 01 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模拟asp中的XmlHttpRequest实现http请求的代码
2011/03/24 PHP
php中使用Curl、socket、file_get_contents三种方法POST提交数据
2011/08/12 PHP
利用“多说”制作留言板、评论系统
2015/07/14 PHP
PHP开发中解决并发问题的几种实现方法分析
2017/11/13 PHP
定义select的边框颜色
2008/04/28 Javascript
JavaScript Event事件学习第一章 Event介绍
2010/02/07 Javascript
javascript中RegExp保留小数点后几位数的方法分享
2013/08/13 Javascript
关于Javascript 对象(object)的prototype
2014/05/09 Javascript
JavaScript中判断函数、变量是否存在
2015/06/10 Javascript
JavaScript闭包和范围实例详解
2016/12/19 Javascript
JS实现直接运行html代码的方法
2017/03/13 Javascript
JavaScript数组和对象的复制
2017/03/21 Javascript
vue scroller返回页面记住滚动位置的实例代码
2018/01/29 Javascript
JS实现统计字符串中字符出现个数及最大个数功能示例
2018/06/04 Javascript
axios全局注册,设置token,以及全局设置url请求网段的方法
2018/09/25 Javascript
小程序分享模块超级详解(推荐)
2019/04/10 Javascript
原生JS实现微信通讯录
2020/06/18 Javascript
vue实现下载文件流完整前后端代码
2020/11/17 Vue.js
下载安装setuptool和pip linux安装pip    
2014/01/24 Python
Python可跨平台实现获取按键的方法
2015/03/05 Python
python中尾递归用法实例详解
2015/04/28 Python
举例讲解Python中的Null模式与桥接模式编程
2016/02/02 Python
Python实现将doc转化pdf格式文档的方法
2018/01/19 Python
opencv python 傅里叶变换的使用
2018/07/21 Python
Django实现简单网页弹出警告代码
2019/11/15 Python
numpy 声明空数组详解
2019/12/05 Python
使用numpngw和matplotlib生成png动画的示例代码
2021/01/24 Python
测绘工程系学生的自我评价
2013/11/30 职场文书
女方回门宴答谢词
2014/01/14 职场文书
健康家庭事迹材料
2014/05/02 职场文书
经营目标管理责任书
2014/07/25 职场文书
公司领导班子民主生活会对照检查材料
2014/10/02 职场文书
初中优秀学生评语
2014/12/29 职场文书
厉行节约工作总结
2015/08/12 职场文书
Django显示可视化图表的实践
2021/05/10 Python
python语言中pandas字符串分割str.split()函数
2022/08/05 Python