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)