七段数码管数字时钟实时显示显示(年月日时分秒)
用数码管显示系统实时时间需要用到turtle、datetime以及time这三个函数,调出系统时间进行运用并控制数码管绘制过程实现这一程序!
最后呈现出来的结果会是一个动态的数码管,每秒钟刷新一次,来达到实时时钟的效果。
代码如下:
from turtle import *
from datetime import *
import time
def drawGap(): #每一小段数码管间隔的绘制penup()fd(6)
def drawLine(draw): #单个数码管的绘制drawGap()pendown() if draw else penup() fd(40)drawGap()right(90)
def drawDigit(d):speed(50)drawLine(True) if d in [2,3,4,5,6,8,9] else drawLine(False)drawLine(True) if d in [0,1,3,4,5,6,7,8,9] else drawLine(False)drawLine(True) if d in [0,2,3,5,6,8,9] else drawLine(False)drawLine(True) if d in [0,2,6,8] else drawLine(False)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)left(180)penup()fd(20)
def drawDate(date): #调用系统时间,格式为"%Y!",以此类推pencolor("red") #全局数码管颜色设置 for i in date:if i == "!":write("年", font = ("Arial", 25, "normal"))pencolor("blue") #单个数码管颜色设置fd(40) #单个数码管的间隔elif i == "@":write("月", font = ("Arial", 25, "normal"))pencolor("orange")fd(40)elif i == "#":write("日", font = ("Arial", 25, "normal"))pencolor("green")fd(40)elif i == "$":write("时", font = ("Arial", 25, "normal"))pencolor("pink") fd(40)elif i == "^":write("分", font = ("Arial", 25, "normal"))pencolor("purple")fd(40)elif i == "&":write("秒", font = ("Arial", 25, "normal"))else:drawDigit(eval(i)) #使用eval()函数将数字变为整数
def main():setup(1500,350,300,300)while True:reset()penup()fd(-600)pensize(8)tracer(False) #隐藏绘图,省去绘图过程的时间,直接显示绘画结果hideturtle()drawDate(datetime.now().strftime("%Y!%m@%d#%H$%M^%S&"))time.sleep(1) #推迟一秒执行done()
main()
运行结果如下:
七段数码管数字时钟实时显示显示(年月日时分秒)相关推荐
- 动态判断时间插件显示到年月日时分秒
根据得到的时间格式,动态判断时间插件显示到年月日时分秒 主要split切割字符串来判断 split将一个字符串切割为字符串数组 <!DOCTYPE html> <html>&l ...
- 实现计时、时钟,实时获取当前年月日时分秒,记录时间(获取当前的时间,开始计时,计时过程相当于你的电脑时钟)0000年00月00日 00:00:00
<!doctype html> <html lang="en"> <head><meta charset="UTF-8" ...
- php 显示当前年月日时分秒,php 获取当前前后年、月、星期、日、时分秒的时间...
php 获取今天前后年.月.星期.日.时分秒的时间. 通过设置时间戳函数strtotime()的参数获取时间. //获取当前时间echo date('Y-m-d H:i:s',strtotime('n ...
- 基于51单片机的自动浇花系统设计/基于51单片机的智能抽奖系统控制设计/基于51单片机的数字时钟与日历显示控制设计 毕业设计
1147基于51单片机的自动浇花系统设计 设计思路:通湿度传感器实时监测湿度,通过LCD显示出实时的湿度采集值,可以通过按键设定目标界限,当达到这个界限值时,浇花系统的电机装置运行. 电路包含:LCD ...
- stm32万年历流程图_STM32 万年历 显示年月日 时分秒 星期
基于STM32处理器 的RTC只是个能靠电池维持运行的32位定时器! 并不像实时时钟芯片,读出来就是年月日时分秒. 此程序 第一次运行时候 从超级终端 输入时间 关键代码 /************* ...
- win10系统excel2019单元格显示完整的年月日时分秒设置方法
https://www.pianshen.com/article/88671983757/ win10系统excel2019单元格显示完整的年月日时分秒设置方法 技术标签: Windows exce ...
- 51单片机LCD1602 定时器时钟 实现年月日时分秒显示
实现功能:利用51单片机的定时器原理制作时钟,显示使用LCD1602,可以显示时分秒年月日和星期 ,识别平年闰年,按键可调整时间日期,整点报时. 1.定时器中断实现时钟基本原理 若系统晶振为12MHZ ...
- html时间日期 年月日时分秒,年月日时分秒的即时显示
网页特效观止|JsCode.CN|---年月日时分秒的即时显示 var timerID = null; var timerRunning = false; function stopclock (){ ...
- C#表格table时间显示年月日时分秒格式设置
C#表格table时间显示年月日时分秒格式设置 作者:张国军_Suger 开发工具与关键技术:Visual Studio 2015.C#..NET 在做C#项目是遇到的前端表格的时间处理问题,一般都是 ...
最新文章
- 机房重构——报表问题总结
- 纪念逝去的岁月——C/C++选择排序
- 利用jquery.form.js实现Ajax无刷新图片上传及预览功能
- Linux常用系统管理命令(top、free、kill、df)
- 自定义组合控件:Banner、轮播图、广告栏控件
- TDSQL 全时态数据库系统-理念与愿景
- 关于Unity中NGUI的Pivot和锚点
- 在Node.js中操作文件系统(一)
- 性能测试之JMeter中ForEach控制器详解
- WAP技术入门(下)
- Android SDK下载安装及配置教程
- ThingsBoard 仪表板状态
- EF 通用帮助类 含分页 Lambda 拼接表达式
- Android如何获取Wifi名称(SSID)
- codeforces 581B Luxurious Houses(线段树点更新,区间查询)
- Java-装箱和拆箱(谁动了我的变量?)
- python浮点数多少位_python 浮点数保留几位小数
- 人人都能看懂的Spring源码解析,Spring如何解决循环依赖
- C#使用List.Clear()方法可以让GC回收内存吗?
- php热图,科学网—使用ComplexHeatmap包绘制个性化热图 - 刘永鑫的博文