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将mdb数据库文件导入postgresql数据库示例
Feb 17 Python
python进阶教程之词典、字典、dict
Aug 29 Python
python简单读取大文件的方法
Jul 01 Python
socket + select 完成伪并发操作的实例
Aug 15 Python
Python 实现输入任意多个数,并计算其平均值的例子
Jul 16 Python
Django 迁移、操作数据库的方法
Aug 02 Python
python GUI库图形界面开发之PyQt5复选框控件QCheckBox详细使用方法与实例
Feb 28 Python
树莓派升级python的具体步骤
Jul 05 Python
matplotlib设置颜色、标记、线条,让你的图像更加丰富(推荐)
Sep 25 Python
Python urllib库如何添加headers过程解析
Oct 05 Python
selenium如何定位span元素的实现
Jan 13 Python
python3实现无权最短路径的方法
May 12 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
全国FM电台频率大全 - 9 上海市
2020/03/11 无线电
PHP生成带有雪花背景的验证码
2006/10/09 PHP
PHP 获取客户端真实IP地址多种方法小结
2010/05/15 PHP
php批量更改数据库表前缀实现方法
2013/10/26 PHP
php通过字符串调用函数示例
2014/03/02 PHP
Yii净化器CHtmlPurifier用法示例(过滤不良代码)
2016/07/15 PHP
php微信支付接口开发程序
2016/08/02 PHP
thinkPHP3.2.3实现阿里大于短信验证的方法
2018/06/06 PHP
利用javascript的面向对象的特性实现限制试用期
2011/08/04 Javascript
javascript阻止scroll事件多次执行的思路及实现
2013/11/08 Javascript
vue.js 表格分页ajax 异步加载数据
2016/10/18 Javascript
js 中文汉字转Unicode、Unicode转中文汉字、ASCII转换Unicode、Unicode转换ASCII、中文转换
2016/12/06 Javascript
es6+angular1.X+webpack 实现按路由功能打包项目的示例
2017/08/16 Javascript
javascript 判断用户有没有操作页面
2017/10/17 Javascript
Js经典案例的实例代码
2018/05/10 Javascript
微信小程序仿美团城市选择
2018/06/06 Javascript
用JavaScript实现贪吃蛇游戏
2020/10/23 Javascript
Python写的创建文件夹自定义函数mkdir()
2014/08/25 Python
python3实现短网址和数字相互转换的方法
2015/04/28 Python
在Python的web框架中中编写日志列表的教程
2015/04/30 Python
vscode 远程调试python的方法
2017/12/01 Python
基于Python的文件类型和字符串详解
2017/12/21 Python
Python实现的购物车功能示例
2018/02/11 Python
python django生成迁移文件的实例
2019/08/31 Python
pytorch中的自定义数据处理详解
2020/01/06 Python
Django查询优化及ajax编码格式原理解析
2020/03/25 Python
jupyter notebook插入本地图片的实现
2020/04/13 Python
opencv+python实现鼠标点击图像,输出该点的RGB和HSV值
2020/06/02 Python
Dogeared官网:在美国手工制作的珠宝
2019/08/24 全球购物
利用promise及参数解构封装ajax请求的方法
2021/03/24 Javascript
年终自我鉴定
2013/10/09 职场文书
关于环保的标语
2014/06/13 职场文书
中秋节国旗下演讲稿
2014/09/05 职场文书
婚宴新娘致辞
2015/07/28 职场文书
优秀创业计划书分享
2019/07/19 职场文书
Windows安装Anaconda3的方法及使用过程详解
2021/06/11 Python