Article: simulator of 8 seg

2019-07-19  本文已影响0人  少儿创客
from turtle import *
speed(0)
sega = Turtle()
sega.pu()
sega.goto(0, 300)
w = 150
h = 20

def rect(t,flag=True, fill=False):
    for i in range(2):
        if fill:
            t.begin_fill()
            
        if flag:
            t.fd(w)
            t.rt(90)
            t.fd(h)
            t.rt(90)
        else:
            t.fd(h)
            t.rt(90)
            t.fd(w)
            t.rt(90)
        if fill:
            t.end_fill()
            
sega.pd()
rect(sega)

segg = Turtle()
segg.pu()
segg.goto(0, 120)
segg.pd()
rect(segg)

segd = Turtle()
segd.pu()
segd.goto(0, -65)
segd.pd()
rect(segd)

segb = Turtle()
segb.pu()
segb.goto(130, 275)
segb.pd()
rect(segb, False)

segc = Turtle()
segc.pu()
segc.goto(130, 90)
segc.pd()
rect(segc, False)

sege = Turtle()
sege.pu()
sege.goto(0, 90)
sege.pd()
rect(sege, False)

segf = Turtle()
segf.pu()
segf.goto(0, 275)
segf.pd()
rect(segf, False)

segh = Turtle()
segh.pu()
segh.goto(180, 30)
segh.pd()
rect(segh, False)



zero   = [1, 1, 1, 1, 1, 1, 0, 0]
one    = [0, 1, 1, 0, 0, 0, 0, 0]
two    = [1, 1, 0, 1, 1, 0, 1, 0]
three  = [1, 1, 1, 1, 0, 0, 1, 0]
four   = [0, 1, 1, 0, 0, 1, 1, 0]
five   = [1, 0, 1, 1, 0, 1, 1, 0]

segs   = [sega, segb, segc, segd, sege, segf, segg, segh]
dirt = [True, False, False, True, False, False, True, False]


for seg in segs:
    seg.speed(0)

for i in range(8):
    if five[i] == 1:
        rect(segs[i], flag=dirt[i], fill=True)
    else:
        rect(segs[i], flag=dirt[i], fill=False)


上一篇下一篇

猜你喜欢

热点阅读