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” ,这两个知识点: 在屏保状态下播放指定文件夹下的视频,而且能分屏显示: 把编译好的屏保 ...
随机推荐
- 索引&切片 切割split
索引 s[n] # 中括号里n为一个数字 切片 s[0:9] ...
- Mina使用总结(四)传输对象ObjectSerializationCodecFactory
用mina框架传输对象,对于开发者来说,直接传输对象,而不用自己编写相应的报文转换代码,将大大节省 开发时间. 即使用对象编码解码器 使用ObjectSerializationCodecFactory ...
- Ubuntu 64 + IntelliJ IDEA + Genymotion 搭建Android开发环境
环境搭建所需可至 http://pan.baidu.com/s/1gd1Kf4Z 下载 注: 此处假定 Ubuntu 用户名为 chenfei 开发相关全部存放在 /home/chen ...
- [转]Hadoop 读写数据流
Hadoop文件读取 1)客户端通过调用FileSystem对象中的open()函数来读取它做需要的数据.FileSystem是HDFS中DistributedFileSystem的一个实例. 2)D ...
- 代码覆盖率测试及 GitHub 自动化集成
本文对应项目为 learn-coverage-test,可以对照项目案例进行阅读. 覆盖率测试 在写代码的时候,我们有时候会进行代码测试以保证我们代码的可执行性.但是测试代码只能保证测试案例能够通过, ...
- 微信小程序 动态加载class
<view class=' {{topid==1?"top": "untop"}}' >
- Opencv——级联分类器(AdaBoost)
API说明: cv::CascadeClassifier::detectMultiScale(InputArray image,//输入灰度图像 CV_OUT std::vector<Rect& ...
- [整理记录备忘] CentOS 7 相关记录
CentOS 7 命令行模式安装GNOME.KDE图形界面 一.进入 root 模式 因为权限限制,所以我们需要进入 root 模式,开机使用 root 登陆或者系统运行中切换为 root 用户均可. ...
- 访问 IIS 元数据库失败解决问题的方法
近日调试一Asp.net程序,出现了“访问 IIS 元数据库失败”的错误信息,最后经过搜索发现了解决问题的方法. 解决方法如下: 1.依次点击“开始”-“运行”. 2.在“运行”栏内输入 “C:\WI ...
- Kafka设计解析(十三)Kafka消费组(consumer group)
转载自 huxihx,原文链接 Kafka消费组(consumer group) 一直以来都想写一点关于kafka consumer的东西,特别是关于新版consumer的中文资料很少.最近Kafka ...