如何利用python绘制七段数码管
绘制七段数码管原理很容易懂,但对于有些小细节如何处理,还是比较纠结的,这里,我是直接分别每一段写出,然后运行的,下面是我的代码
from turtle import *
setup(400,400,200,200)
pensize(4)
pencolor("red")
for i in range(10):
#第一段数码管的绘制
if i in [2,3,4,5,6,8,9] :
penup()
fd(4)
pendown()
fd(12)
penup()
fd(4)
pendown()
right(90)
else :
penup()
fd(20)
pendown()
right(90)
#第二段数码管的绘制
if i in [0,3,4,5,6,7,8,9] :
penup()
fd(4)
pendown()
fd(12)
penup()
fd(4)
pendown()
right(90)
else :
penup()
fd(20)
pendown()
right(90)
#第三段数码管的绘制
if i in [0,2,3,5,6,8,9] :
penup()
fd(4)
pendown()
fd(12)
penup()
fd(4)
pendown()
right(90)
else :
penup()
fd(20)
pendown()
right(90)
#第四段数码管的绘制
if i in [0,1,2,6,8] :
penup()
fd(4)
pendown()
fd(12)
penup()
fd(4)
pendown()
right(90)
left(90)
else :
penup()
fd(20)
pendown()
#第五段数码管的绘制
if i in [0,1,4,5,6,8,9] :
penup()
fd(4)
pendown()
fd(12)
penup()
fd(4)
pendown()
right(90)
else :
penup()
fd(20)
pendown()
right(90)
#第六段数码管的绘制
if i in [0,2,3,5,6,7,8,9] :
penup()
fd(4)
pendown()
fd(12)
penup()
fd(4)
pendown()
right(90)
else :
penup()
fd(20)
pendown()
right(90)
#第七段数码管的绘制
if i in [0,2,3,4,7,8,9] :
penup()
fd(4)
pendown()
fd(12)
penup()
fd(4)
left(90)
fd(8)
pendown()
else :
penup()
fd(20)
#每个数字绘制完成后到开始下一个数字绘制之间做的准备
left(90)
fd(8)
pendown()
程序最后运行的结果:
在这之后,我还有一个小想法(一直想问小小的脑袋哪来的那么多的问号),我想截取目前的时间戳,然后用七段数码管绘制出来,如何做呢,正在沉思 >- -<希望下一次更新给大家带来结果吧!
写在最后,作为一个刚接触程序的小白,一直想写一些自己的东西,也恰逢学校开了python课,于是就开始了捣鼓之路!如果代码有问题,欢迎大家指出!