• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
娃
博客园    首页    新随笔    联系   管理    订阅  订阅
7段数码管绘制
import turtle, datetime
 
def drawGap():         
    turtle.up()
    turtle.fd(5)
 
 
def drawLine(draw):    
    drawGap()
    if(draw):
        turtle.down()
    else:
        turtle.up()
 
    turtle.fd(40)
    drawGap()
    turtle.right(90)
 
 
def drawDigit(i):    
    if i in [2,3,4,5,6,8,9]:
        drawLine(True)
    else:
        drawLine(False)
 
    if i in [0,1,3,4,5,6,7,8,9]:
        drawLine(True)
    else:
        drawLine(False)
 
    if i in [0,2,3,5,6,8]:
        drawLine(True)
    else:
        drawLine(False)
 
    if i in [0,2,6,8]:
        drawLine(True)
    else:
        drawLine(False)
 
    turtle.left(90)
 
    if i in [0,4,5,6,8,9]:
        drawLine(True)
    else:
        drawLine(False)
 
    if i in [0,2,3,5,6,7,8,9]:
        drawLine(True)
    else:
        drawLine(False)
 
    if i in [0,1,2,3,4,7,8,9]:
        drawLine(True)
    else:
        drawLine(False)
 
    turtle.right(180)
    turtle.penup()
    turtle.fd(20)
 
 
 
def drawData(time):
    turtle.pencolor("red")
    for i in time:
        if i == '-':
            turtle.write('年',font=("Arial", 18, "normal"))
            turtle.fd(38)
            turtle.pencolor("green")
        elif i == '+':
            turtle.write('月',font=("Arial", 18, "normal"))
            turtle.pencolor("blue")
            turtle.fd(38)
        elif i == '=':
            turtle.write('日',font=("Arial", 18, "normal"))
            turtle.pencolor("purple")
            turtle.fd(38)
        elif i=='$':
            turtle.write("时",font=("Arial",18,"normal"))
            turtle.pencolor("pink")
            turtle.fd(40)
        elif i=='/':
            turtle.write("分",font=("Arial",18,"normal"))
            turtle.fd(40)    
        else:
            drawDigit(eval(i))
 
 
def main():
    turtle.setup(1200,350,200,200)
    turtle.speed(100)
    turtle.pensize(5)
    turtle.penup()
    turtle.fd(-5
00)
    turtle.hideturtle()
    drawData(datetime.datetime.now().strftime('%Y-%m+%d=%H$%M/'))
    turtle.mainloop()
main()

  

posted on 2020-10-18 23:54  娃  阅读(163)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3