python定义一个类描述数字时钟_“数字时钟”案例学习python函数及时间库

本文通过Python的turtle库和time模块,介绍如何定义一个类来描述数字时钟。首先分析如何使用turtle绘制数字和汉字,接着讨论如何通过time库获取实时时间并动态更新时钟。文章通过实例代码讲解函数的使用和时间库相关知识,展示了如何实现数字时钟的动态显示。
摘要由CSDN通过智能技术生成

在编程语言中有一个非常有用的语法:函数。通过编写函数,对于反复使用的功能可以直接调用,能省很多精力。而时间库则是python最常用的一个库,今天树哥通过绘制一个“数字时钟”来讲解函数和时间库相关的知识。

eaf81a4c510fd9f9e42d09a5e71d242e2934a4fd.jpeg?token=9f4880df1a514d7c1e2c1eb16b127d9d&s=38853C72ADA0480B12F5F4D60000D0B1

一、案例分析

案例:题目:绘制一个是数字时钟,要求数值时钟的时间与现实生活的时间相符。如上图所示:

分析:这其实是两个问题:

绘制时间。按照时间的变化更新这个数字时钟。我们分别来描述这个问题的解决方案:

1、绘制数字时钟

我们分析一下当前的这个图,发现可以使用我们之前提过的turtle,也就是海龟会图库来解决。当前的这个图有两部分组成:

汉字:时、分、秒代表时、分、秒的8位数字汉字的问题:

汉字的问题只需要三个步骤:

到达指定的地方,使用turtle.goto(坐标)设置笔的颜色,turtle.pencolor("颜色"),使用red,blue,green书写汉字,turtle.write('汉字',font=(相关参数))例如以下的几条语句而已:

0d338744ebf81a4c64dcbc59151a905d242da66d.jpeg?token=0fd25d442188b9ee564aafa347e11f79

代表时、分、秒的八位数字

我们单独看每一个数字,这其实是一个“七段数码管”的经典问题,解决思路是:

把一位数字拆分成七段,每一段给定一个编号,如图所示:

3b7e9a793c3bb59b28486d201b142ab03419.gif

不同的数码管段点亮组合成不同的数字,例如:数字 “8” 就需要全部的段落都要点亮,而数字 “0” 则中间的横不需要点亮,而数字 “1” 则只需要点亮右侧的上下两个竖就可以。

当明白这个原理后,我们只要得到相应的数字,只要把相应的段落点亮就可以。

不过,我们没有数码管,有的只是turtle绘图软件,那么我们就需要明白:只要在需要的段落上留下痕迹就可以。

要实现这点也有两个方法:

每个数字写段代码,使用if语句逐个判断。大家公用一段代码,写每个段落时判断是否需要落笔。第一个方法比较简单,不进行演示,我们使用第二种方法尝试。为了笔顺顺畅,我们以横为开

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值