首页 > 其他分享 >7段数码管绘制

7段数码管绘制

时间:2023-11-21 21:00:50浏览次数:33  
标签:turtle False drawLine True else 数码管 fd 绘制

import turtle, datetime
def drawGap():  # 绘制数码管间隔
    turtle.penup()
    turtle.fd(5)

def drawLine(draw):  # 绘制单段数码管
    drawGap()
    turtle.pendown() if draw else turtle.penup()
    turtle.fd(40)
    drawGap()
    turtle.right(90)

def drawDigit(d):  # 根据数字绘制七段数码管
    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)#日左下角那一竖
    turtle.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)#日右上角那一竖
    turtle.left(180)
    turtle.penup()
    turtle.fd(20)


def drawDate(date):
    turtle.pencolor("red")
    for i in date:
        if i == '-':
            turtle.write('年', font=("Arial ", 36, "normal"))
            turtle.pencolor("green")
            turtle.fd(50)
        elif i == '=':
            turtle.write('月', font=("Arial", 36, "normal"))
            turtle.pencolor("blue")
            turtle.fd(50)
        elif i == '+':
            turtle.write('日', font=("Arial", 36, "normal"))
            turtle.pencolor("yellow")
            turtle.fd(50)
        elif i == '*':
            turtle.write('时', font=("Arial", 36, "normal"))
            turtle.pencolor("purple")
            turtle.fd(50)
        elif i == '/':
            turtle.write('分', font=("Arial", 36, "normal"))
            turtle.pencolor("gold")
            turtle.fd(50)
        elif i == '$':
            turtle.write('秒', font=("Arial", 36, "normal"))
        else:
            drawDigit(eval(i))


def main():
    turtle.speed(30) #海龟移动速度
    turtle.setup(1400, 350, 200, 200)#设置窗口大小
    turtle.penup()
    turtle.fd(-650)
    turtle.pensize(5)
    drawDate(datetime.datetime.now().strftime('%Y-%m=%d+%H*'))
    turtle.hideturtle()
    turtle.done()

main()

 

标签:turtle,False,drawLine,True,else,数码管,fd,绘制
From: https://www.cnblogs.com/T1an-/p/17847590.html

相关文章

  • 七段数码管绘制|年月日时分秒
    代码展示: 运行结果:  ......
  • 51单片机实验2:静态数码管
    数码管介绍共阳极数码管是指将所有发光二极管的阳极接到一起形成公共阳极的数码管,共阳极数码管在应用时将公共端接到+5V。共阴极数码管是指将所有发光二极管的阳极接到一起形成公共阴极的数码管,共阴极数码管在应用时将公共端接到GND。硬件设计74HC138译码器管脚说明真值表(低电平有......
  • 软件测试/人工智能|使用ChatGPT帮我们绘制产品架构图
    简介当我们想要设计一款产品的时候,文字总是不能具体的呈现出产品的架构,这个时候如果我们能够有一个架构图就会直观很多,也方便大家理解。但是架构图却并不好设计,需要我们对产品有足够的了解,同时还要对技术栈有较深的理解,所以我们还是可以找一个帮手,让ChatGPT帮我们来绘制产品架构......
  • 7段数码管绘制
    importturtle,datetimeimporttimedefdrawGap():turtle.penup()turtle.fd(5)defdrawLine(draw):drawGap()turtle.pendown()ifdrawelseturtle.penup()turtle.fd(40)drawGap()turtle.right(90)defdrawDigit(d):drawLine(T......
  • react中绘制饼图基础例子
    使用interval标记和theta坐标系来绘制饼图 radius:标签相对于饼图圆心的距离.label()中的text指定了一个回调函数,可以设置标签,其中d是当前项数据,i是当前项的索引,data是全部的数据,注意回调函数要有返回值。实现效果: import{Chart}from'@antv/g2'importReactfrom'......
  • 7段数码管绘制
    importturtleimportdatetimeimporttimedefdraw_gap():#画数码间隔turtle.penup()turtle.fd(5)defdraw_line(draw):#画单段数码管draw_gap()turtle.pendown()ifdrawelseturtle.penup()turtle.fd(40)draw_gap()turtle.r......
  • 7段数码管绘制
       ......
  • 7段数码管绘制
    importturtle,datetimedefdrawGap():#绘制数码管间隔turtle.penup()turtle.fd(5)defdrawLine(draw):#绘制单段数码管drawGap()turtle.pendown()ifdrawelseturtle.penup()turtle.fd(40)drawGap()turtle.right(90)defdrawDigit(d):#......
  • 7段数码管绘制
    importturtleimportdatetimeimporttimedefdraw_gap():#绘制数码间隔turtle.penup()turtle.fd(5)defdraw_line(draw):#绘制单段数码管draw_gap()turtle.pendown()ifdrawelseturtle.penup()turtle.fd(40)draw_gap()turtle.right(90)def......
  • 7段数码管绘制
    要求:画出,系统时间。具体包括:小时,分,秒,星期。 importturtleastimporttimea=time.strftime('%a',time.localtime())ifa=='Mon':c=1elifa=='Tue':c=2elifa=='Wed':c=3elifa=='Thu':c=4elif......