Python:利用七段数码管输出系统时间(补充)

在原有学习基础上对七段数码管引入时间库和随机函数库,实现不同视觉效果。

1、问题描述:利用七段数码管将自己的生日输出,并用不同的颜色表示

#七段电子管绘制.py

import turtle as t
import time                 #导入时间库
import random as r          #导入随机函数库

#定义绘制线段函数:
def drawLine(draw):
    t.pendown() if draw else t.penup()
    t.pencolor(r.random(),r.random(),r.random())
    t.fd(80)
    t.right(90)
    
#定义绘制0-9数字函数:
def drawDigit(i):
    #画第一线段:
    drawLine(True) if i in [2,3,4,5,6,8,9] else drawLine(False)
    drawLine(True) if i in [0,1,3,4,5,6,7,8,9] else drawLine(False)
    drawLine(True) if i in [0,2,3,5,6,8,9] else drawLine(False)
    drawLine(True) if i in [0,2,6,8] else drawLine(False)
    t.left(90)              #画笔方向反向90度
    drawLine(True) if i in [0,4,5,6,8,9] else drawLine(False)
    drawLine(True) if i in [0,2,3,5,6,7,8,9] else drawLine(False)
    drawLine(True) if i in [0,1,2,3,4,7,8,9] else drawLine(False)
    t.left(180)             #改变画笔方向180度
    t.penup()
    t.fd(20)                #提笔数字间隔20px
    
#定义绘制日期函数:
def drawDate(date):
    for i in date:
        drawDigit(eval(i))

#定义主函数main():
def main():
    t.setup(1000,350)
    t.pensize(8)
    t.penup()
    t.fd(-400)
    drawDate('20010402')
    t.hideturtle()
    t.done()

#主函数的调用:
main()

运行结果如下图:

 2、利用七段数码管输出系统的当前的时间

#七段电子管绘制.py

import turtle as t
import time                 #导入时间库
import random as r          #导入随机函数库

#定义绘制线段函数:
def drawLine(draw):
    t.pendown() if draw else t.penup()
    t.pencolor(r.random(),r.random(),r.random())
    t.fd(80)
    t.right(90)
    
#定义绘制0-9数字函数:
def drawDigit(i):
    #画第一线段:
    drawLine(True) if i in [2,3,4,5,6,8,9] else drawLine(False)
    drawLine(True) if i in [0,1,3,4,5,6,7,8,9] else drawLine(False)
    drawLine(True) if i in [0,2,3,5,6,8,9] else drawLine(False)
    drawLine(True) if i in [0,2,6,8] else drawLine(False)
    t.left(90)              #画笔方向反向90度
    drawLine(True) if i in [0,4,5,6,8,9] else drawLine(False)
    drawLine(True) if i in [0,2,3,5,6,7,8,9] else drawLine(False)
    drawLine(True) if i in [0,1,2,3,4,7,8,9] else drawLine(False)
    t.left(180)             #改变画笔方向180度
    t.penup()
    t.fd(20)                #提笔数字间隔20px
    
#定义绘制日期函数:
def drawDate(date):
    for i in date:
        drawDigit(eval(i))

#定义主函数main():
def main():
    t.setup(1000,350)
    t.pensize(8)
    t.penup()
    t.fd(-400)
    drawDate(time.strftime('%Y%m%d'))        #输出当前系统时间
    t.hideturtle()
    t.done()
    
#主函数的调用:
main()

 运行结果如下图:

 当代码变化出颜色,生活便拥有了意义

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值