Python入门学习记录005——数码管显示日期(turtle与time库运用)

在turtle画布中以数码管形式画出日期

思路:
1、数码管的绘画:将数码管分为七段,调用七次画直线并转向函数。
2、对于不同的数字,直线函数可判断七段中需要画出哪些。
3、利用time库获取当前格式化的日期并储存为字符串,遍历字符串写出所有数字
4、判断格式化日期中的字符,用turtle.write()函数写出年月日。

import turtle as tt
import time as ti
Num=["0","1","2","3","4","5","6","7","8","9"]
def Drawline(sign):
    if sign:
        tt.penup()
        tt.fd(4)
        tt.pendown()
        tt.fd(22)
        tt.penup()
        tt.fd(4)
        tt.pendown
    else:
        tt.penup()
        tt.fd(30)
    tt.right(90)
def Drawdigital(num):
    Drawline(1) if num in ["2","3","4","5","6","8","9"] else Drawline(0)
    Drawline(1) if num in ["0","1","3","4","5","6","7","8","9"] else Drawline(0)
    Drawline(1) if num in ["0","2","3","5","6","8","9"] else Drawline(0)
    Drawline(1) if num in ["0","2","6","8"] else Drawline(0)
    tt.left(90)
    Drawline(1) if num in ["0","4","5","6","8","9"] else Drawline(0)
    Drawline(1) if num in ["0","2","3","5","6","7","8","9"] else Drawline(0)    
    Drawline(1) if num in ["0","1","2","3","4","7","8","9"] else Drawline(0)
def Get_time():
    Day=ti.gmtime()
    Day=ti.strftime("%Y-%m+%d=",Day)
    print(Day)
    return (Day)
def Turtle_init():
    #tt.hideturtle()
    tt.setup(800,800)
    tt.penup()
    tt.goto(-300,0)
    tt.speed(0)
    tt.pensize(5)
    tt.color("red")
def Space():
    tt.left(90)
    tt.fd(20)
    tt.left(90)
    tt.fd(30)
    tt.right(90)
    tt.fd(50)
def Display():
    Day=Get_time()
    for i in Day:
        print(i)
        if i in Num:
            Drawdigital(i)
            tt.left(180)
            tt.fd(20)
        elif (i=="-"):
            tt.fd(5)
            tt.right(90)
            tt.fd(30)
            tt.write("年",font=("Arial",34,"normal"))
            Space()
            tt.pencolor("green")
        elif (i=="+"):
            tt.fd(5)
            tt.right(90)
            tt.fd(30)
            tt.write("月",font=("Arial",34,"normal"))
            Space()
            tt.pencolor("blue")
        elif (i=="="):
            tt.fd(5)
            tt.right(90)
            tt.fd(30)
            tt.write("日",font=("Arial",34,"normal"))
            Space()
def main():
    Turtle_init()
    Display()
main()   

代码太多注释懒得写

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值