首页 > 其他分享 >7段数码管绘制(小时,分,秒)

7段数码管绘制(小时,分,秒)

时间:2023-11-22 17:34:39浏览次数:26  
标签:digit drawLine True random pencolor else 数码管 小时 绘制

7段数码管绘制(小时,分,秒)

python代码:

# 七段数码管的绘制.py
from turtle import *  # 调用turtle、random、time库
from random import *
import time


def drawGap():
    penup()  # 提笔
    fd(5)


def drawLine(draw):
    drawGap()
    if draw:  # 除了七段数码管提笔,其余停笔
        pendown()
    else:
        penup()
    fd(40)  # 向前40
    drawGap()
    right(90)  # 向右旋转90


def drawDight(digit):
    pencolor(random(), random(), random())  # 颜色随机
    drawLine(True) if digit in [2, 3, 4, 5, 6, 8, 9] else drawLine(False)  # 第一段那些数字会经过
    pencolor(random(), random(), random())
    drawLine(True) if digit in [0, 1, 3, 4, 5, 6, 7, 8, 9] else drawLine(False)
    pencolor(random(), random(), random())
    drawLine(True) if digit in [0, 2, 3, 5, 6, 8, 9] else drawLine(False)
    pencolor(random(), random(), random())
    drawLine(True) if digit in [0, 2, 6, 8] else drawLine(False)
    pencolor(random(), random(), random())
    left(90)  # 向左旋转90度
    drawLine(True) if digit in [0, 4, 5, 6, 8, 9] else drawLine(False)
    pencolor(random(), random(), random())
    drawLine(True) if digit in [0, 2, 3, 5, 6, 7, 8, 9] else drawLine(False)
    pencolor(random(), random(), random())
    drawLine(True) if digit in [0, 1, 2, 3, 4, 7, 8, 9] else drawLine(False)
    pencolor(random(), random(), random())
    left(180)
    penup()  # 为绘制后续数字确定位置
    fd(20)  # 为绘制后续数字确定位置


def drawDate(date):
    for i in date:

        if i == '-':  # 设定年、月、日的单位

            write('小时', font=("Arial", 28, "normal"))
            pencolor("orange")
            fd(40)
        elif i == '=':
            write('分', font=("Arial", 28, "normal"))
            pencolor("pink")
            fd(40)
        elif i == '+':

            write('秒', font=("Arial", 28, "normal"))
            pencolor("yellow")

        else:
            drawDight(eval(i))


def main():
    setup(800, 350, 200, 200)  # 设置画布大小
    penup()
    fd(-300)
    pensize(5)

    drawDate(time.strftime('%H-%M=%S+', time.localtime()))  # 将模板设置为"小时-分钟=秒+"
    hideturtle()
    done()


main()

运行结果:

 

标签:digit,drawLine,True,random,pencolor,else,数码管,小时,绘制
From: https://www.cnblogs.com/LXxx007/p/17849890.html

相关文章

  • 数码管问题
    importturtle,datetimedefdrawGap(): #绘制数码管间隔  turtle.penup()  turtle.fd(5)defdrawLine(draw): #绘制单段数码管  drawGap()  turtle.pendown()ifdrawelseturtle.penup()  turtle.fd(40)  drawGap()  turtle.right......
  • 7段数码管绘制
    7段数码管绘制运行代码importturtle,datetimedefdrawGap(): #绘制数码管间隔  turtle.penup()  turtle.fd(5)defdrawLine(draw): #绘制单段数码管  drawGap()  turtle.pendown()ifdrawelseturtle.penup()  turtle.fd(40)  draw......
  • 单片机+数码管
    利用8个数码管显示座位号+字母+学号后六位首先参考图参考程序可以了解到此程序实现了数码管显示OFF我们可以改的简单一点如下#include "reg51.h" //引入块unsigned char a_code[]{0x3f,0x71,0x00}; //共阴级数码管字段编码,我们选取重要的几个unsigned char a......
  • 7段数码管绘制
    importturtle,datetimedefdrawLine(draw): turtle.pendown()ifdrawelseturtle.penup()turtle.fd(40)turtle.right(90)defdrawDigit(digit): drawLine(True)ifdigitin[2,3,4,5,6,8,9]elsedrawLine(False)drawLine(True)ifdigitin......
  • 七段数码管绘制
    #22信计2向悦17号importturtle,datetime#3107defdrawGap():turtle.penup()turtle.fd(5)defdrawLine(draw): drawGap()turtle.pendown()ifdrawelseturtle.penup()turtle.fd(40)drawGap()turtle.right(90)defdrawDigit(d): drawLine(Tr......
  • 七段数码管绘制
    importturtle,datetimedefdrawLine(draw):turtle.pendown()ifdrawelseturtle.penup()turtle.fd(40)turtle.right(90)defdrawDigit(d):drawLine(True)ifdin[2,3,4,5,6,8,9]elsedrawLine(False)drawLine(True)ifdin[0,1,3,4,5,6,7,8,9......
  • 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段数码管绘制
    7段数码管绘描述:画出系统时间。具体包括:年,月,日,小时,分,秒。python代码:importturtle,datetimedefdrawGap():#绘制数码管间隔turtle.penup()turtle.fd(5)defdrawLine(draw):#绘制单段数码管drawGap()turtle.pendown()ifdrawelseturtle.penup......
  • 7段数码管绘制
    importturtle,datetimedefdrawGap():#绘制数码管间隔turtle.penup()turtle.fd(5)defdrawLine(draw):#绘制单段数码管drawGap()turtle.pendown()ifdrawelseturtle.penup()turtle.fd(40)drawGap()turtle.right(90)defdrawD......
  • 七段数码管绘制|年月日时分秒
    代码展示: 运行结果:  ......