python七段数码管绘制英文字母_Python入门基础:七段数码管绘制
1.在学习Python的过程中,运用所学的一些基础知识,进行一些简单的编程,可以收获很多乐趣。在生活中,LED灯无处不在,荧幕显示的广告词,给我们呈现出动态的视觉效果。下面,则以最简单的显示日期为例,绘制七段数码管。
2.何为七段数码管
数码管是一种价格便宜、使用简单的电子器件,广泛应用于价格较低的电子类产品中,其中,七段数码管最为常用。七段数码管(Seven-segment Indicator)由七段数码管拼接而成,每段有亮或不亮的两种情况,且包括一个小数点的位置。
3.在绘制数码管的显示动态时,可以自定义顺序,如图1.
图1 七段数码管的绘制顺序
4.源代码,包含部分注释
import turtle,datetime#引用
def drawGap():#绘制数码管间隔
turtle.penup()
turtle.fd(5)
def drawLine(draw):#绘制单段数码管
turtle.pendown() if draw else turtle.penup()
turtle.fd(40)
drawGap()
turtle.right(90)
def drawDigit(d):#根据数字绘制七段数码管,True或False决定是否抬起画笔
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,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",18,"normal"))#设置字体,大小
turtle.pencolor("green")
turtle.fd(40)
elif i == '=':
turtle.write('月',font=("Arial",18,"normal"))
turtle.pencolor("blue")
turtle.fd(40)
elif i == '+':
turtle.write('日',font=("Arial",18,"normal"))
else:
drawDigit(eval(i))
def main():
turtle.setup(800,350,200,200)#显示窗体的大小
turtle.penup()
turtle.fd(-350)
turtle.pensize(5)
drawDate(datetime.datetime.now().strftime('%Y-%m=%d+1'))#日期的读取方式,便于控制输出的顺序(年,月,日)
turtle.hideturtle()
raw_input('please press enter to close this window.')#解决闪退问题
main()
5.运行结果
python七段数码管绘制英文字母_Python入门基础:七段数码管绘制相关推荐
- python七段数码管绘制英文字母_Python实例之七段数码管绘制理解
Python 实例之七段数码管绘制理解 八段线的编号如上图所示.基本逻辑为画笔从 1 走到 7 ,每一步画笔落下代表画或者是 画笔抬起代表不画,最终形成 1-9 的数字排列.以下理解均为个人学习理解. ...
- [Python从零到壹] 三十五.图像处理基础篇之OpenCV绘制各类几何图形
欢迎大家来到"Python从零到壹",在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界.所有文章都将结合案例.代码和作者的经验讲 ...
- python中如何判断输入的是英文字母_python如何判断一个字符是否为汉字,英文字母,数字,空还是其他...
一直在忙工作的事情,对不起大家,今后一定抽出时间来写python,和大家一起学python. 今天给大家一段代码,大家可以看一下哈. # 判断一个字符是否为汉字,英文字母,数字,空还是其他 # 使用U ...
- 怎样用python提取英文字母_python如何获取一次获取26个英文字母
第一种方法,也是最笨的方法,自己输入. 第二种方法,使用string方法 string.ascii_uppercase,26大写英文字母 string.ascii_lowercase,26个小写英文字 ...
- python如何生成26个英文字母(包括大小和小写)以及附上英文可见(常用)字符的ASCII码表。
目的:我们想要利用python生成26个英文字母,然后将其存入列表. 方案: 使用chr函数,将一个整数解释成一个字符,这个整数其实就是这个字符的ASCII码.比如字母a对应的ASCII码就是97,那 ...
- [Python] 编码生成26个英文字母
使用chr函数,将一个整数转成对应的一个字符,这个整数其实就是这个字符的ASCII码 语法格式 chr(i) 参数i可以是十进制或十六进制形式的数字 返回值 返回当前整数数字代表的ASCII字符 # ...
- python 判断x是否为英文字母 数字 空格
x.isalapha(): 表示x是否为英文字母 x.isnumeric(): 表示x是否为数字 x.issapace(): 表示x是否为空格
- [转载] 把数据对象转成字符串_python入门基础培训教程,Python 字符串学习
参考链接: Python字符串| printable python入门基础培训教程中,字符串的学习即基础又非常重要,如果不能掌握好python字符串,对于以后python课程的学习,将会带来严重的错误 ...
- python基础教程运行程序_Python入门基础教程:WSGI
原标题:Python入门基础教程:WSGI WSGI 简介 WSGI 是什么 WSGI 是 Python Web Server Gateway Interface 的缩写,是描述 Web 服务器与 P ...
最新文章
- 二、stm32f103+enc28j60
- 常用数据验证正则表达式释义(附:正则表达式常用符号)
- oracle redo 200mb,Oracle的redo log在各场景下的恢复
- 存储技术论坛:最高可用级别的同步复制及方案
- http协议-响应和请求
- 《机械基础》记忆性内容总结
- python十以内加减法_【小学】 生成10以内的加减法
- 游戏汉化技术内幕——第3章索引和资源的说明
- 企业微信第三方应用Demo源码
- 复现 ASPCMS企业建站系统Cookies欺骗漏洞
- 简单的介绍一下腾讯的TAPD
- 2018网易互娱秋招笔试题
- 微信小程序--窗口背景颜色铺满页面
- 微信开发者工具配置连接Gitee
- java毕业设计旅拍平台源码+lw文档+mybatis+系统+mysql数据库+调试
- 地理距离测算(方法免费共享,经纬度、省份、地级市、港口间距离)
- 数学定理可以这样证明
- 基于oracle的餐馆评价系统,美团大众点评优化评价系统 助力餐饮商家做好口碑营销...
- android系统重力感应传感器 方向控制与方向切换,android sensor orientation 方向传感器 重力感应...
- 贝叶斯网络的python实现:Monty Hall问题的求解
热门文章
- Python脚本之对文件的处理
- 交通标志识别 java_交通标志识别项目 putsi/tsaraisa · GitHub
- 六、Web服务体系结构
- C++ 创建静态链接库和动态链接库
- Python用百度AI识别车牌号教程(超详细)
- 零基础如何成为一名原画师??看这里
- 【电脑端】腾讯视频PC端微信截图扫码失败解决办法
- 部署Office Web Apps Server 实现office在线编辑预览,office-online
- os.listdir(path)避坑指南
- 计算机不能上网 检查路线,电脑上不了网怎么解决?