python实现屏保计时器
什么都不说先上图吧,Python 初学者实现屏保计时器
原理:利用 Python turtle 库实现快速画图,每隔一秒钟擦除屏幕,然后获得电脑实时时间,再次画图,呈现动态时间。
关于数字如果画,可以把数字理解为一个晶体管状的 8(7segments),不同数字都是其演变而来,只不过对不同数字实现抬笔,落笔动作,可以对不同
import turtle, time
def drawGap():
turtle.penup()
turtle.fd()
def drawLine(draw):
drawGap()
turtle.pendown() if draw else turtle.penup()
turtle.fd()
drawGap()
turtle.right()
def drawDigit(d):
drawLine(True) ,,,,,,] else drawLine(False) #g
drawLine(True) ,, , , , ,, , ] else drawLine(False) #c
drawLine(True) , , , , , , ] else drawLine(False) #d
drawLine(True) ,,,] else drawLine(False) #e
turtle.left() #经历一次右转后,调整左转,方向竖直向上
drawLine(True) ,,,,,] else drawLine(False)
drawLine(True) ,,,,,,,] else drawLine(False)
drawLine(True) ,,,,,,,] else drawLine(False)
turtle.left()
turtle.penup()
turtle.fd()
def drawDate(date):
turtle.pencolor('red')
for i in date:
if i == '-':
turtle.write(,'normal'))
turtle.pencolor('green')
turtle.fd()
elif i == '=':
turtle.write(, 'normal'))
turtle.pencolor('blue')
turtle.fd()
elif i == '+':
turtle.write(, 'normal'))
turtle.pencolor('yellow')
else:
drawDigit(eval(i))
def init():
turtle.setup(,,,) #设置画布大小 为屏幕位置
turtle.speed()
turtle.penup()
turtle.,)
turtle.fd(-)
turtle.pensize()
def main():
while True:
turtle.clear()
init()
time_string = time.strftime("%H-%M=%S+", time.localtime())
turtle.getscreen().tracer(,)
drawDate(time_string) #格式化时间 -=+ 控制输入年日月
time.sleep()
turtle.hideturtle()
main()
最后可以利用 pyinstaller 库实现 Python 程序 exe 软件化。
:\>pip install pyinstaller :\>pyinstaller D:\codes\dpython.py :\>pyinstaller -F dpython.py //可以通过-F 参数对 Python 源文件生成一个独立的可执行文件
作者:rottengeek
原文链接:http://t.cn/RD2bP69

python实现屏保计时器的更多相关文章
- python写的屏保程序
__author__ = 'ChenYan' from random import randint from tkinter import * class Randball(): def __init ...
- 一个仿windows泡泡屏保的实现
一个仿windows泡泡屏保的实现 有天看到有人在百度知道上问windows 泡泡屏保该怎么用C#做,一时有趣,就做了一个出来,对于其中几个要点总结如下: 一,屏保程序的制作要求 屏保程序的扩展名是. ...
- Winform中实现自定义屏保效果(附代码下载)
场景 效果 注: 博客主页: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的程序猿 获取编程相关电子书.教程推送与免费下载. 实现 新建form ...
- C#制作简易屏保
前言:前段时间,有个网友问我C#制作屏保的问题,我瞬间懵逼了(C#还可以制作屏保!).于是我去查阅相关资料,下面把C#如何制作屏保的过程及我学习过程的心得也记录下来,希望对需要的人能有帮助. 基本思路 ...
- 仿W8屏保
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Linux关闭休眠和屏保模式
本人因为特殊需求,想让某台Linux主机始终显示某个程序,显示器不能关机或者休眠或进入屏保模式. 环境:Ubuntu 11.10 最小化模式安装并安装有轻量级桌面openbox(非gnome).因为X ...
- [AIR] AS3.0设置屏保功能
package com.controls { import flash.desktop.NativeApplication; import flash.events.Event; import fla ...
- Win XP 如何禁用屏保
如果你试过 “在桌面空白处点击右键-[属性]-[屏幕保护程序],选择[无],点击[确定]”后,当时是可以去掉屏保.但如果重启计算机或者从待机状态唤醒后,屏保依然会出现,那么你可以试试下面的方法. 首先 ...
- wpf 制作播放视频的屏保程序、而且能分屏显示
这个程序用到了WPF里 “visual_Brush”(主要是为了实现分屏显示) , “UserControl” ,这两个知识点: 在屏保状态下播放指定文件夹下的视频,而且能分屏显示: 把编译好的屏保 ...
随机推荐
- spider-抓取网页内容(Beautiful soup)
http://jingyan.baidu.com/article/afd8f4de6197c834e386e96b.html http://cuiqingcai.com/1319.html Windo ...
- 11g数据库查看dataguard是否同步
一.环境 主库: ip地址:192.168.122.203 oracle根目录:/data/db/oracle SID:qyq 数据文件路径/ ...
- 021.15 IO流 其他流
IO包中的其他类操作基本数据类型:DataInputStream与DataOutputStream操作字节数组:ByteArrayInputStream与ByteArrayOutputStream操作 ...
- hadoop学习;hdfs操作;执行抛出权限异常: Permission denied;api查看源代码方法;源代码不停的向里循环;抽象类通过debug查找源代码
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/u010026901/article/details/26587251 eclipse快捷键alt+s ...
- Linux - 版本控制系统SVN
0. 摘要 本文通过搭建SVN多版本库为例,介绍SVN的使用. SVN是一个集中式版本控制系统,在服务端部署中央版本库,所有开发人员客户端连接到中央版本库进行代码的提交和更新. Apache Subv ...
- no.random.randn
numpy中有一些常用的用来产生随机数的函数,randn就是其中一个,randn函数位于numpy.random中,函数原型如下: numpy.random.randn(d0, d1, ..., dn ...
- 【转】Python数据处理(四舍五入、除法部分)
转自:https://www.cnblogs.com/junyiningyuan/p/5338378.html 关于除法 传统除法 对两个整数进行除的运算,同时结果会舍去小数部分,返回一个整数.但如果 ...
- Python:基础知识(二)
常用模块 urllib2 :用于发送网络请求,获取数据 (Pyhton2中的urllib2工具包,在Python3中分拆成了urllib.request和urllib.error两个包.) json: ...
- html手机网页自适应宽度
#在head之间加如下代码即可 <meta name="viewport" content="width=device-width, initial-scale=1 ...
- Spring源码分析(九)解析默认标签中的自定义标签元素
摘要:本文结合<Spring源码深度解析>来分析Spring 5.0.6版本的源代码.若有描述错误之处,欢迎指正. 到这里我们已经完成了分析默认标签的解析与提取过程,或许涉及的内容太多,我 ...