Python实现七段数码电子管

## 0、导入库模块

#import turtle                      #导入turtle库,方法前面一定要添加库名
from turtle import *              #导入turtle库,方法前面不添加库名
from random import *              #导入turtle库,方法前面不添加库名
import time                        #导入时间time,方法前面一定要添加库名

## 1、绘制单段管间隔(绘制空隙)

def drawGap():        #定义绘制间隔函数def drawGap():
    penup()           #将画笔设置飞行模式
    fd(5)             #画笔向前行走5像素

## 2、绘制单段数码管(绘制单段)

def drawLine(draw):       #定义绘制单段管
    drawGap()             #调用绘制间隔函数(函数的调用与函数的嵌套)
    if draw:
        pendown()         #如果绘制将画笔设置成画图状态
    else:
        penup()         #否侧将画笔设置成飞行状态
    fd(40)              #将画笔前进四十像素,以画出一段数码管
    drawGap()
    right(90)          #将画笔向右旋转90度

## 3、根据数字绘制七段数码管(绘制数字)

def drawDigit(digit):
    pencolor('red')
    drawLine(True) if digit in [2,3,4,5,6,8,9] else drawLine(False)   
    #运用if推导表达式调用函数
    """
        if digit in [2,3,4,5,6,8,9]:
                      drawLine(True)
                else:
                     drawLine(False)
     """
               
    #画第二段
    pencolor(random(),random(),random())    #将画笔颜色随机0-1取值
    drawLine(True) if digit in [0,1,3,4,5,6,7,8,9] else drawLine(False)
    
    #画第三段
    pencolor(random(),random(),random())    #将画笔颜色随机0-1取值
    drawLine(True) if digit in [0,2,3,5,6,8] else drawLine(False)
    
    #画第四段
    pencolor(random(),random(),random())    #将画笔颜色随机0-1取值
    drawLine(True) if digit in [0,2,6,8] else drawLine(False)
    
    #画第五段
    left(90)        #将海龟前进的方向向右旋转90度
    pencolor(random(),random(),random())    #将画笔颜色随机0-1取值
    drawLine(True) if digit in [0,4,5,6,8,9] else drawLine(False)
    
    #画第六段
    pencolor(random(),random(),random())    #将画笔颜色随机0-1取值
    drawLine(True) if digit in [0,2,3,5,6,7,8,9] else drawLine(False)
    
    #画第七段
    pencolor(random(),random(),random())    #将画笔颜色随机0-1取值
    drawLine(True) if digit in [0,1,2,3,4,7,8,9] else drawLine(False)
    left(180)     #将海龟前进的方向旋转180度
    penup()       #将画笔设置成飞行状态
    fd(20)        #将每个数字之间设置二十像素间距
    

## 4、获取绘制时间(先从键盘上面获取,再优化到系统时间)

def drawData(date):    #定义时间数字函数
    for i in date:     #循环打印出时间的每一个数字
        drawDigit(eval(i))   #将字符串转换成数字

## 5、定义主函数(设置画笔大小颜色画布等)

def main():      #定义设置画笔大小颜色画布等
    setup(850,350)   #设置画布的大小
    bgcolor('black')         #设置画布为黑色
    speed(300)               #设置海龟画笔的速度为300
    penup()                  
    fd(-350)                 #设置画笔往左飞行350像素
    pensize(5)               #设置画笔大小为5像素
    drawData(input('请输入您要绘制的生日日期:'))   #从键盘输入生日日期
    hideturtle()            #隐藏海龟画笔
    done()                  #设置时间结束



## 6、调用主函数实现效果

if __name__=='__main__':      #当主函数为脚本时调用执行主函数
    main()                    #调用主函数
    #mainloop()                #设置界面循环

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python创意七段管是一种基于Python编程语言的创意编程环境。它是用于儿童和初学者学习编程的工具之一,通过简单易懂的语法和可视化界面,让用户能够以有趣的方式学习基础的编程概念。 Python创意七段管的特点是它拥有七段可编程的灯带,每段灯带都具有不同的颜色和功能。用户可以使用Python编写代码,控制这七段灯带的颜色和行为,创作出属于自己的独特作品。 比如,用户可以编写代码让灯带闪烁成不同的颜色,或者编写代码让灯带按照一定的节奏呼吸灯。此外,用户还可以编写代码控制灯带之间的相互作用,使灯带在不同颜色之间交替显示,或者按照特定的规律组成图案等。 Python创意七段管的学习过程充满了创意和想象力。用户可以通过编写代码实现自己的创意想法,并且观察结果,不断进行调试和改进。这种实践中学习的方式,对培养用户的逻辑思维和问题解决能力非常有帮助。而且,Python创意七段管还可以与其他硬件进行连接,如传感器、按钮等,进一步扩展创作的可能性。 总之,Python创意七段管是一种创新的编程工具,它通过Python语言和可视化界面,让用户能够以创意的方式学习编程,培养逻辑思维和问题解决能力,同时也能激发用户的创造力和想象力。这是一个适用于儿童和初学者的有趣而具有教育意义的工具。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值